Author: arekm                        Date: Wed Aug 24 10:21:41 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- resurect kernel-aufs2-no-const-grsec.patch with new way of dealing with 
things (unfinished)

---- Files affected:
packages/kernel:
   kernel.spec (1.956 -> 1.957) , kernel-aufs2-no-const-grsec.patch (1.4 -> 
1.5) 

---- Diffs:

================================================================
Index: packages/kernel/kernel.spec
diff -u packages/kernel/kernel.spec:1.956 packages/kernel/kernel.spec:1.957
--- packages/kernel/kernel.spec:1.956   Wed Aug 24 11:00:04 2011
+++ packages/kernel/kernel.spec Wed Aug 24 12:21:34 2011
@@ -264,7 +264,7 @@
 #
 Patch145:      kernel-aufs2.patch
 Patch146:      kernel-aufs2-unionfs.patch
-
+Patch147:      kernel-aufs2-no-const-grsec.patch
 Patch148:      kernel-aufs2-reiser4.patch
 
 # Show normal colors in menuconfig with ncurses ABI 6
@@ -767,6 +767,8 @@
 
 %if %{with grsecurity}
 %patch9999 -p1
+# aufs needs this
+%patch -p147
 %{?with_vserver:%patch10000 -p1}
 %{?with_vserver:%patch10001 -p1}
 %{?with_vserver:%patch10002 -p1}
@@ -1517,6 +1519,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.957  2011/08/24 10:21:34  arekm
+- resurect kernel-aufs2-no-const-grsec.patch with new way of dealing with 
things (unfinished)
+
 Revision 1.956  2011/08/24 09:00:04  arekm
 - update grsec to /grsecurity-2.2.2-3.0.3-201108232250.patch
 

================================================================
Index: packages/kernel/kernel-aufs2-no-const-grsec.patch
diff -u /dev/null packages/kernel/kernel-aufs2-no-const-grsec.patch:1.5
--- /dev/null   Wed Aug 24 12:21:41 2011
+++ packages/kernel/kernel-aufs2-no-const-grsec.patch   Wed Aug 24 12:21:36 2011
@@ -0,0 +1,51 @@
+--- linux-3.0/fs/aufs/dynop.c  2011-08-24 12:17:44.788277908 +0200
++++ linux-3.0/fs/aufs/dynop.c  2011-08-24 12:11:22.375748361 +0200
+@@ -149,9 +149,11 @@
+ #define DySet(func, dst, src, h_op, h_sb) do {                                
\
+       DyDbgInc(cnt);                                                  \
+       if (h_op->func) {                                               \
+-              if (src.func)                                           \
+-                      dst.func = src.func;                            \
+-              else                                                    \
++              if (src.func) {                                         \
++                      pax_open_kernel();                              \
++                      *(void **)&dst.func = src.func;                 \
++                      pax_close_kernel();                             \
++              } else                                                  \
+                       AuDbg("%s %s\n", au_sbtype(h_sb), #func);       \
+       }                                                               \
+ } while (0)
+@@ -159,7 +161,9 @@
+ #define DySetForce(func, dst, src) do {               \
+       AuDebugOn(!src.func);                   \
+       DyDbgInc(cnt);                          \
+-      dst.func = src.func;                    \
++      pax_open_kernel();                      \
++      *(void **)&dst.func = src.func;         \
++      pax_close_kernel();                     \
+ } while (0)
+ 
+ #define DySetAop(func) \
+@@ -266,15 +270,17 @@
+  */
+ static void dy_adx(struct au_dyaop *dyaop, int do_dx)
+ {
++      pax_open_kernel();
+       if (!do_dx) {
+-              dyaop->da_op.direct_IO = NULL;
+-              dyaop->da_op.get_xip_mem = NULL;
++              *(void **)&dyaop->da_op.direct_IO = NULL;
++              *(void **)&dyaop->da_op.get_xip_mem = NULL;
+       } else {
+-              dyaop->da_op.direct_IO = aufs_aop.direct_IO;
+-              dyaop->da_op.get_xip_mem = aufs_aop.get_xip_mem;
++              *(void **)&dyaop->da_op.direct_IO = aufs_aop.direct_IO;
++              *(void **)&dyaop->da_op.get_xip_mem = aufs_aop.get_xip_mem;
+               if (!dyaop->da_get_xip_mem)
+-                      dyaop->da_op.get_xip_mem = NULL;
++                      *(void **)&dyaop->da_op.get_xip_mem = NULL;
+       }
++      pax_close_kernel();
+ }
+ 
+ static struct au_dyaop *dy_aget(struct au_branch *br,
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel.spec?r1=1.956&r2=1.957&f=u
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel-aufs2-no-const-grsec.patch?r1=1.4&r2=1.5&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to