other_patches

来自「早期freebsd实现」· 代码 · 共 30 行

TXT
30
字号
*** PORT/db/recno/rec_open.c.orig	1993/10/13 02:01:31--- PORT/db/recno/rec_open.c	1993/10/13 02:20:47****************** 159,167 ****--- 159,182 ----  				SET(t, R_EOF);  			else {  				t->bt_msize = sb.st_size;+ /*+  * hack : +  *+  * The Linux kernel mmap() semantics are broken :+  * +  * Under Linux, read only private mappings cause write only and read/write +  * opens to fail with errno=ETXTBSY.  Shared read only mappings should work+  * fine though, but I'm not familiar enough with the code to ascertain that+  * a MAP_SHARED mapping would be safe so I use the non-mmap'd version +  * instead.+  *+  */+ + #if !defined(linux)   				if ((t->bt_smap = mmap(NULL, t->bt_msize,  				    PROT_READ, MAP_PRIVATE, rfd,  				    (off_t)0)) == (caddr_t)-1)+ #endif  					goto slow;  				t->bt_cmap = t->bt_smap;  				t->bt_emap = t->bt_smap + sb.st_size;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?