rpms/kernel/F-9 linux-2.6-fs-cifs-fix-plaintext-authentication.patch, NONE, 1.1 linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch, NONE, 1.1 kernel.spec, 1.764, 1.765

Chuck Ebbert cebbert at fedoraproject.org
Sun Sep 14 01:44:04 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv10854

Modified Files:
	kernel.spec 
Added Files:
	linux-2.6-fs-cifs-fix-plaintext-authentication.patch 
	linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch 
Log Message:
Add two patches scheduled for 2.6.26-stable:
  cifs: fix plaintext authentication
  mm:   mark correct zone full when scanning zonelists

linux-2.6-fs-cifs-fix-plaintext-authentication.patch:

--- NEW FILE linux-2.6-fs-cifs-fix-plaintext-authentication.patch ---

# HG changeset patch
# User Steve French <sfrench at us.ibm.com>
# Date 1219872622 0
# Node ID 162cdc8faa8cd3f5a0128d99c5697184f95f3d4b
# Parent fc091f471c790bfc1a60b82c04c6bcb7a5d8e19a
[CIFS] Fix plaintext authentication

The last eight bytes of the password field were not cleared when doing lanman plaintext password authentication. This patch fixes that.

I tested it with Samba by setting password
encryption to no in the server's smb.conf.  Other servers also can be
configured to force plaintext authentication.    Note that plaintexti
authentication requires setting /proc/fs/cifs/SecurityFlags to 0x30030
on the client (enabling both LANMAN and also plaintext password support).
Also note that LANMAN support (and thus plaintext password support) requires
CONFIG_CIFS_WEAK_PW_HASH to be enabled in menuconfig.

CC: Jeff Layton <jlayton at redhat.com>
CC: Stable Kernel <stable at vger.kernel.org>
Signed-off-by: Steve French <sfrench at us.ibm.com>

committer: Steve French <sfrench at us.ibm.com>

--- a/fs/cifs/cifsencrypt.c	Wed Aug 27 21:17:41 2008 +0000
+++ b/fs/cifs/cifsencrypt.c	Wed Aug 27 21:30:22 2008 +0000
@@ -294,6 +294,7 @@
 
 	if ((ses->server->secMode & SECMODE_PW_ENCRYPT) == 0)
 		if (extended_security & CIFSSEC_MAY_PLNTXT) {
+			memset(lnm_session_key, 0, CIFS_SESS_KEY_SIZE);
 			memcpy(lnm_session_key, password_with_pad,
 				CIFS_ENCPWD_SIZE);
 			return;


linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch:

--- NEW FILE linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch ---
From: Mel Gorman <mel at csn.ul.ie>
Date: Sat, 13 Sep 2008 09:33:19 +0000 (-0700)
Subject: mm: mark the correct zone as full when scanning zonelists
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=5bead2a0680687b9576d57c177988e8aa082b922

mm: mark the correct zone as full when scanning zonelists

The iterator for_each_zone_zonelist() uses a struct zoneref *z cursor when
scanning zonelists to keep track of where in the zonelist it is.  The
zoneref that is returned corresponds to the the next zone that is to be
scanned, not the current one.  It was intended to be treated as an opaque
list.

When the page allocator is scanning a zonelist, it marks elements in the
zonelist corresponding to zones that are temporarily full.  As the
zonelist is being updated, it uses the cursor here;

  if (NUMA_BUILD)
        zlc_mark_zone_full(zonelist, z);

This is intended to prevent rescanning in the near future but the zoneref
cursor does not correspond to the zone that has been found to be full.
This is an easy misunderstanding to make so this patch corrects the
problem by changing zoneref cursor to be the current zone being scanned
instead of the next one.

Signed-off-by: Mel Gorman <mel at csn.ul.ie>
Cc: Andy Whitcroft <apw at shadowen.org>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
Cc: <stable at kernel.org>		[2.6.26.x]
Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds at linux-foundation.org>
---

diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h
index 443bc7c..428328a 100644
--- a/include/linux/mmzone.h
+++ b/include/linux/mmzone.h
@@ -751,8 +751,9 @@ static inline int zonelist_node_idx(struct zoneref *zoneref)
  *
  * This function returns the next zone at or below a given zone index that is
  * within the allowed nodemask using a cursor as the starting point for the
- * search. The zoneref returned is a cursor that is used as the next starting
- * point for future calls to next_zones_zonelist().
+ * search. The zoneref returned is a cursor that represents the current zone
+ * being examined. It should be advanced by one before calling
+ * next_zones_zonelist again.
  */
 struct zoneref *next_zones_zonelist(struct zoneref *z,
 					enum zone_type highest_zoneidx,
@@ -768,9 +769,8 @@ struct zoneref *next_zones_zonelist(struct zoneref *z,
  *
  * This function returns the first zone at or below a given zone index that is
  * within the allowed nodemask. The zoneref returned is a cursor that can be
- * used to iterate the zonelist with next_zones_zonelist. The cursor should
- * not be used by the caller as it does not match the value of the zone
- * returned.
+ * used to iterate the zonelist with next_zones_zonelist by advancing it by
+ * one before calling.
  */
 static inline struct zoneref *first_zones_zonelist(struct zonelist *zonelist,
 					enum zone_type highest_zoneidx,
@@ -795,7 +795,7 @@ static inline struct zoneref *first_zones_zonelist(struct zonelist *zonelist,
 #define for_each_zone_zonelist_nodemask(zone, z, zlist, highidx, nodemask) \
 	for (z = first_zones_zonelist(zlist, highidx, nodemask, &zone);	\
 		zone;							\
-		z = next_zones_zonelist(z, highidx, nodemask, &zone))	\
+		z = next_zones_zonelist(++z, highidx, nodemask, &zone))	\
 
 /**
  * for_each_zone_zonelist - helper macro to iterate over valid zones in a zonelist at or below a given zone index
diff --git a/mm/mmzone.c b/mm/mmzone.c
index 486ed59..16ce8b9 100644
--- a/mm/mmzone.c
+++ b/mm/mmzone.c
@@ -69,6 +69,6 @@ struct zoneref *next_zones_zonelist(struct zoneref *z,
 				(z->zone && !zref_in_nodemask(z, nodes)))
 			z++;
 
-	*zone = zonelist_zone(z++);
+	*zone = zonelist_zone(z);
 	return z;
 }


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/kernel.spec,v
retrieving revision 1.764
retrieving revision 1.765
diff -u -r1.764 -r1.765
--- kernel.spec	14 Sep 2008 01:29:23 -0000	1.764
+++ kernel.spec	14 Sep 2008 01:43:33 -0000	1.765
@@ -622,6 +622,7 @@
 # filesystem patches
 Patch420: linux-2.6-fs-cifs-turn-off-unicode-during-session-establishment.patch
 Patch421: linux-2.6-squashfs.patch
+Patch422: linux-2.6-fs-cifs-fix-plaintext-authentication.patch
 
 Patch430: linux-2.6-net-silence-noisy-printks.patch
 
@@ -655,6 +656,7 @@
 Patch830: linux-2.6-cpuidle-3-make-ladder-governor-honor-latency-requirements.patch
 
 Patch900: linux-2.6-mm-dirty-page-tracking-race-fix.patch
+Patch901: linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch
 
 Patch1101: linux-2.6-default-mmf_dump_elf_headers.patch
 Patch1400: linux-2.6-smarter-relatime.patch
@@ -1118,6 +1120,8 @@
 # mm
 # possible data corruption, esp. on ppc
 ApplyPatch linux-2.6-mm-dirty-page-tracking-race-fix.patch
+# mm zone scan patch scheduled for -stable
+ApplyPatch linux-2.6-mm-mark-correct-zone-full-when-scanning-zonelists.patch
 
 # Various low-impact patches to aid debugging.
 ApplyPatch linux-2.6-debug-sizeof-structs.patch
@@ -1161,6 +1165,8 @@
 ApplyPatch linux-2.6-fs-cifs-turn-off-unicode-during-session-establishment.patch
 # Squashfs
 ApplyPatch linux-2.6-squashfs.patch
+# fix CIFS plaintext passwords
+ApplyPatch linux-2.6-fs-cifs-fix-plaintext-authentication.patch
 
 # Networking
 # Disable easy to trigger printk's.
@@ -1850,6 +1856,11 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
 
 %changelog
+* Sat Sep 13 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.26.5-38
+- Add two patches scheduled for 2.6.26-stable:
+  cifs: fix plaintext authentication
+  mm:   mark correct zone full when scanning zonelists
+
 * Sat Sep 13 2008 Chuck Ebbert <cebbert at redhat.com> 2.6.26.5-37
 - Fix problems with scheduler clock going backwards (#453257)
 




More information about the fedora-extras-commits mailing list