r1015 - trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches
Joshua Kwan
joshk@haydn.debian.org
Wed, 11 Aug 2004 12:52:38 -0600
Author: joshk
Date: 2004-08-11 12:52:31 -0600 (Wed, 11 Aug 2004)
New Revision: 1015
Added:
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/025_proc_tty_security.diff
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/026_binfmt_misc_unload.diff
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/027_vfat_cries_wolf.diff
Modified:
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/003_kbuild_fixes.diff
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/021_ide_module_fix.diff-BROKEN
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/023_jbd_commit_interval.diff
trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/patch-2.4.26-1
Log:
more! ever more!
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/003_kbuild_fixes.diff
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/003_kbuild_fixes.diff 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/003_kbuild_fixes.diff 2004-08-11 18:52:31 UTC (rev 1015)
@@ -87,3 +87,15 @@
fdformat --version | awk -F\- '{print "util-linux ", $NF}'
+diff -urN kernel-source-2.4.26/Makefile kernel-source-2.4.26-1/Makefile
+--- kernel-source-2.4.26/Makefile 2004-04-14 23:05:41.000000000 +1000
++++ kernel-source-2.4.26-1/Makefile 2004-04-17 14:23:30.000000000 +1000
+@@ -500,7 +505,7 @@
+ ifdef CONFIG_MODVERSIONS
+ $(MAKE) update-modverfile
+ endif
+- scripts/mkdep -- `find $(FINDHPATH) \( -name SCCS -o -name .svn \) -prune -o -follow -name \*.h ! -name modversions.h -print` > .hdepend
++ find $(FINDHPATH) \( -name SCCS -o -name .svn \) -prune -o -follow -name \*.h ! -name modversions.h -print | xargs scripts/mkdep -- > .hdepend
+ scripts/mkdep -- init/*.c > .depend
+
+ ifdef CONFIG_MODVERSIONS
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/021_ide_module_fix.diff-BROKEN
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/021_ide_module_fix.diff-BROKEN 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/021_ide_module_fix.diff-BROKEN 2004-08-11 18:52:31 UTC (rev 1015)
@@ -87,275 +87,7 @@
if [ "$CONFIG_PPC" = "y" -o "$CONFIG_ARM" = "y" ]; then
dep_tristate ' Winbond SL82c105 support' CONFIG_BLK_DEV_SL82C105 $CONFIG_BLK_DEV_IDEPCI
fi
---- kernel-source-2.4.26/drivers/ide/ide-disk.c 2003-11-29 05:26:20.000000000 +1100
-+++ kernel-source-2.4.26-1/drivers/ide/ide-disk.c 2003-11-29 20:53:31.000000000 +1100
-@@ -69,6 +69,7 @@
- #include <asm/irq.h>
- #include <asm/uaccess.h>
- #include <asm/io.h>
-+#include <asm/div64.h>
-
- /* FIXME: some day we shouldnt need to look in here! */
-
-@@ -76,6 +77,12 @@
-
- static int driver_blocked;
-
-+#ifdef CONFIG_IDEDISK_STROKE
-+#define STROKE 1
-+#else
-+#define STROKE 0
-+#endif
-+
- static inline u32 idedisk_read_24 (ide_drive_t *drive)
- {
- #if 0
-@@ -1062,7 +1069,6 @@
- return addr;
- }
-
--#ifdef CONFIG_IDEDISK_STROKE
- /*
- * Sets maximum virtual LBA address of the drive.
- * Returns new maximum virtual LBA address (> 0) or 0 on failure.
-@@ -1126,20 +1132,64 @@
- addr_set = ((__u64)high << 24) | low;
- }
- return addr_set;
-+}
-+
-+static unsigned long long sectors_to_MB(unsigned long long n) {
-+ n <<= 9; /* make it bytes */
-+ do_div(n, 1000000); /* make it MB */
-+ return n;
- }
-
--#endif /* CONFIG_IDEDISK_STROKE */
-+static inline void idedisk_check_hpa_lba28(ide_drive_t *drive)
-+{
-+ unsigned long capacity, set_max;
-
--/*
-- * Tests if the drive supports Host Protected Area feature.
-- * Returns true if supported, false otherwise.
-- */
--static inline int idedisk_supports_host_protected_area(ide_drive_t *drive)
-+ capacity = drive->id->lba_capacity;
-+ set_max = idedisk_read_native_max_address(drive);
-+
-+ if (set_max <= capacity)
-+ return;
-+
-+ printk(KERN_INFO "%s: Host Protected Area detected.\n"
-+ "\tcurrent capacity is %ld sectors (%ld MB)\n"
-+ "\tnative capacity is %ld sectors (%ld MB)\n",
-+ drive->name,
-+ capacity, (capacity - capacity/625 + 974)/1950,
-+ set_max, (set_max - set_max/625 + 974)/1950);
-+ if (STROKE || drive->stroke) {
-+ set_max = idedisk_set_max_address(drive, set_max);
-+ if (set_max) {
-+ drive->id->lba_capacity = set_max;
-+ printk(KERN_INFO "%s: Host Protected Area disabled.\n",
-+ drive->name);
-+ }
-+ }
-+}
-+
-+static inline void idedisk_check_hpa_lba48(ide_drive_t *drive)
- {
-- int flag = (drive->id->cfs_enable_1 & 0x0400) ? 1 : 0;
-- if (flag)
-- printk("%s: host protected area => %d\n", drive->name, flag);
-- return flag;
-+ unsigned long long capacity_2, set_max_ext;
-+
-+ capacity_2 = drive->id->lba_capacity_2;
-+ set_max_ext = idedisk_read_native_max_address_ext(drive);
-+
-+ if (set_max_ext <= capacity_2)
-+ return;
-+
-+ printk(KERN_INFO "%s: Host Protected Area detected.\n"
-+ "\tcurrent capacity is %lld sectors (%lld MB)\n"
-+ "\tnative capacity is %lld sectors (%lld MB)\n",
-+ drive->name,
-+ capacity_2, sectors_to_MB(capacity_2),
-+ set_max_ext, sectors_to_MB(set_max_ext));
-+ if (STROKE || drive->stroke) {
-+ set_max_ext = idedisk_set_max_address_ext(drive, set_max_ext);
-+ if (set_max_ext) {
-+ drive->id->lba_capacity_2 = set_max_ext;
-+ printk(KERN_INFO "%s: Host Protected Area disabled.\n",
-+ drive->name);
-+ }
-+ }
- }
-
- /*
-@@ -1156,86 +1206,42 @@
- * in above order (i.e., if value of higher priority is available,
- * reset will be ignored).
- */
--#define IDE_STROKE_LIMIT (32000*1024*2)
- static void init_idedisk_capacity (ide_drive_t *drive)
- {
- struct hd_driveid *id = drive->id;
-- unsigned long capacity = drive->cyl * drive->head * drive->sect;
-- unsigned long set_max = idedisk_read_native_max_address(drive);
-- unsigned long long capacity_2 = capacity;
-- unsigned long long set_max_ext;
--
-- drive->capacity48 = 0;
-- drive->select.b.lba = 0;
-+ /*
-+ * If this drive supports the Host Protected Area feature set,
-+ * then we may need to change our opinion about the drive's capacity.
-+ */
-+ int hpa = (id->command_set_1 & 0x0400) && (id->cfs_enable_1 & 0x0400);
-
-- (void) idedisk_supports_host_protected_area(drive);
-+ if ((id->command_set_2 & 0x0400) && (id->cfs_enable_2 & 0x0400)) {
-+ /* drive speaks 48-bit LBA */
-+ unsigned long long capacity_2;
-
-- if (id->cfs_enable_2 & 0x0400) {
-+ drive->select.b.lba = 1;
-+ if (hpa)
-+ idedisk_check_hpa_lba48(drive);
- capacity_2 = id->lba_capacity_2;
- drive->head = drive->bios_head = 255;
- drive->sect = drive->bios_sect = 63;
- drive->cyl = (unsigned int) capacity_2 / (drive->head * drive->sect);
-- drive->select.b.lba = 1;
-- set_max_ext = idedisk_read_native_max_address_ext(drive);
-- if (set_max_ext > capacity_2 && capacity_2 > IDE_STROKE_LIMIT) {
--#ifdef CONFIG_IDEDISK_STROKE
-- set_max_ext = idedisk_read_native_max_address_ext(drive);
-- set_max_ext = idedisk_set_max_address_ext(drive, set_max_ext);
-- if (set_max_ext) {
-- drive->capacity48 = capacity_2 = set_max_ext;
-- drive->cyl = (unsigned int) set_max_ext / (drive->head * drive->sect);
-- drive->select.b.lba = 1;
-- drive->id->lba_capacity_2 = capacity_2;
-- }
--#else /* !CONFIG_IDEDISK_STROKE */
-- printk(KERN_INFO "%s: setmax_ext LBA %llu, native %llu\n",
-- drive->name, set_max_ext, capacity_2);
--#endif /* CONFIG_IDEDISK_STROKE */
-- }
-- drive->cyl = (unsigned int) capacity_2 / (drive->head * drive->sect);
- drive->bios_cyl = drive->cyl;
- drive->capacity48 = capacity_2;
- drive->capacity = (unsigned long) capacity_2;
-- goto check_capacity48;
-- /* Determine capacity, and use LBA if the drive properly supports it */
- } else if ((id->capability & 2) && lba_capacity_is_ok(id)) {
-+ /* drive speaks 28-bit LBA */
-+ unsigned long capacity;
-+
-+ drive->select.b.lba = 1;
-+ if (hpa)
-+ idedisk_check_hpa_lba28(drive);
- capacity = id->lba_capacity;
- drive->cyl = capacity / (drive->head * drive->sect);
-- drive->select.b.lba = 1;
-- }
--
-- if (set_max > capacity && capacity > IDE_STROKE_LIMIT) {
--#ifdef CONFIG_IDEDISK_STROKE
-- set_max = idedisk_read_native_max_address(drive);
-- set_max = idedisk_set_max_address(drive, set_max);
-- if (set_max) {
-- drive->capacity = capacity = set_max;
-- drive->cyl = set_max / (drive->head * drive->sect);
-- drive->select.b.lba = 1;
-- drive->id->lba_capacity = capacity;
-- }
--#else /* !CONFIG_IDEDISK_STROKE */
-- printk(KERN_INFO "%s: setmax LBA %lu, native %lu\n",
-- drive->name, set_max, capacity);
--#endif /* CONFIG_IDEDISK_STROKE */
-- }
--
-- drive->capacity = capacity;
--
-- if ((id->command_set_2 & 0x0400) && (id->cfs_enable_2 & 0x0400)) {
-- drive->capacity48 = id->lba_capacity_2;
-- drive->head = 255;
-- drive->sect = 63;
-- drive->cyl = (unsigned long)(drive->capacity48) / (drive->head * drive->sect);
-- }
--
--check_capacity48:
-- /* Limit disk size to 137GB if LBA48 addressing is not supported */
-- if (drive->addressing == 0 && drive->capacity48 > (1ULL)<<28) {
-- printk("%s: cannot use LBA48 - capacity reset "
-- "from %llu to %llu\n",
-- drive->name, drive->capacity48, (1ULL)<<28);
-- drive->capacity48 = (1ULL)<<28;
-+ drive->capacity = capacity;
-+ } else {
-+ /* drive speaks boring old 28-bit CHS */
-+ drive->capacity = drive->cyl * drive->head * drive->sect;
- }
- }
-
-@@ -1560,7 +1566,13 @@
- return 0;
- }
-
--static int probe_lba_addressing (ide_drive_t *drive, int arg)
-+/*
-+ * drive->addressing:
-+ * 0: 28-bit
-+ * 1: 48-bit
-+ * 2: 48-bit capable doing 28-bit
-+ */
-+static int set_lba_addressing (ide_drive_t *drive, int arg)
- {
- drive->addressing = 0;
-
-@@ -1573,11 +1585,6 @@
- return 0;
- }
-
--static int set_lba_addressing (ide_drive_t *drive, int arg)
--{
-- return (probe_lba_addressing(drive, arg));
--}
--
- static void idedisk_add_settings(ide_drive_t *drive)
- {
- struct hd_driveid *id = drive->id;
-@@ -1654,10 +1661,10 @@
- }
-
- #if 1
-- (void) probe_lba_addressing(drive, 1);
-+ (void)set_lba_addressing(drive, 1);
- #else
- /* if using 48-bit addressing bump the request size up */
-- if (probe_lba_addressing(drive, 1))
-+ if (set_lba_addressing(drive, 1))
- blk_queue_max_sectors(&drive->queue, 2048);
- #endif
-
-@@ -1686,6 +1693,14 @@
- /* calculate drive capacity, and select LBA if possible */
- init_idedisk_capacity (drive);
-
-+ /* Limit disk size to 137GB if LBA48 addressing is not supported */
-+ if (drive->addressing == 0 && drive->capacity48 > (1ULL)<<28) {
-+ printk("%s: cannot use LBA48 - capacity reset "
-+ "from %llu to %llu\n",
-+ drive->name, drive->capacity48, (1ULL)<<28);
-+ drive->capacity48 = (1ULL)<<28;
-+ }
-+
- /*
- * if possible, give fdisk access to more of the drive,
- * by correcting bios_cyls:
+
--- kernel-source-2.4.26/drivers/ide/ide-probe.c 2004-04-14 23:05:29.000000000 +1000
+++ kernel-source-2.4.26-1/drivers/ide/ide-probe.c 2004-04-17 14:23:47.000000000 +1000
@@ -1425,12 +1425,16 @@
@@ -431,33 +163,6 @@
#ifdef CONFIG_IDEDMA_AUTO
int noautodma = 0;
-@@ -2089,6 +2089,7 @@
- * "hdx=scsi" : the return of the ide-scsi flag, this is useful for
- * allowwing ide-floppy, ide-tape, and ide-cdrom|writers
- * to use ide-scsi emulation on a device specific option.
-+ * "hdx=stroke" : runtime version of CONFIG_IDEDISK_STROKE
- * "idebus=xx" : inform IDE driver of VESA/PCI bus speed in MHz,
- * where "xx" is between 20 and 66 inclusive,
- * used when tuning chipset PIO modes.
-@@ -2188,7 +2189,7 @@
- const char *hd_words[] = {"none", "noprobe", "nowerr", "cdrom",
- "serialize", "autotune", "noautotune",
- "slow", "swapdata", "bswap", "flash",
-- "remap", "noremap", "scsi", NULL};
-+ "remap", "noremap", "scsi", "stroke", NULL};
- unit = s[2] - 'a';
- hw = unit / MAX_DRIVES;
- unit = unit % MAX_DRIVES;
-@@ -2254,6 +2255,9 @@
- case -14: /* "scsi" */
- drive->scsi = 1;
- goto done;
-+ case -15: /* "stroke" */
-+ drive->stroke = 1;
-+ goto done;
- case 3: /* cyl,head,sect */
- drive->media = ide_disk;
- drive->cyl = drive->bios_cyl = vals[0];
@@ -2489,12 +2493,9 @@
*/
static void __init probe_for_hwifs (void)
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/023_jbd_commit_interval.diff
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/023_jbd_commit_interval.diff 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/023_jbd_commit_interval.diff 2004-08-11 18:52:31 UTC (rev 1015)
@@ -133,3 +133,14 @@
/**
* void journal_forget() - bforget() for potentially-journaled buffers.
+diff -urN kernel-source-2.4.26/fs/buffer.c kernel-source-2.4.26-1/fs/buffer.c
+--- kernel-source-2.4.26/fs/buffer.c 2004-02-19 00:36:31.000000000 +1100
++++ kernel-source-2.4.26-1/fs/buffer.c 2004-02-22 20:28:30.000000000 +1100
+@@ -799,6 +799,7 @@
+ bh->b_list = BUF_CLEAN;
+ bh->b_end_io = handler;
+ bh->b_private = private;
++ bh->b_journal_head = NULL;
+ }
+
+ void end_buffer_io_async(struct buffer_head * bh, int uptodate)
Added: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/025_proc_tty_security.diff
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/025_proc_tty_security.diff 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/025_proc_tty_security.diff 2004-08-11 18:52:31 UTC (rev 1015)
@@ -0,0 +1,60 @@
+This patch is connected to CAN-2003-0461.
+
+--- kernel-source-2.4.26/fs/proc/generic.c 2003-11-29 05:26:21.000000000 +1100
++++ kernel-source-2.4.26-1/fs/proc/generic.c 2003-11-29 20:53:47.000000000 +1100
+@@ -486,12 +486,12 @@
+ return ent;
+ }
+
+-struct proc_dir_entry *proc_mkdir(const char *name, struct proc_dir_entry *parent)
++struct proc_dir_entry *proc_mkdir_mode(const char *name, mode_t mode,
++ struct proc_dir_entry *parent)
+ {
+ struct proc_dir_entry *ent;
+
+- ent = proc_create(&parent,name,
+- (S_IFDIR | S_IRUGO | S_IXUGO),2);
++ ent = proc_create(&parent, name, S_IFDIR | mode, 2);
+ if (ent) {
+ ent->proc_fops = &proc_dir_operations;
+ ent->proc_iops = &proc_dir_inode_operations;
+@@ -504,6 +504,12 @@
+ return ent;
+ }
+
++struct proc_dir_entry *proc_mkdir(const char *name,
++ struct proc_dir_entry *parent)
++{
++ return proc_mkdir_mode(name, S_IRUGO | S_IXUGO, parent);
++}
++
+ struct proc_dir_entry *create_proc_entry(const char *name, mode_t mode,
+ struct proc_dir_entry *parent)
+ {
+--- kernel-source-2.4.26/fs/proc/proc_tty.c 2000-04-22 08:17:57.000000000 +1000
++++ kernel-source-2.4.26-1/fs/proc/proc_tty.c 2003-07-23 21:12:10.000000000 +1000
+@@ -174,7 +174,13 @@
+ if (!proc_mkdir("tty", 0))
+ return;
+ proc_tty_ldisc = proc_mkdir("tty/ldisc", 0);
+- proc_tty_driver = proc_mkdir("tty/driver", 0);
++ /*
++ * /proc/tty/driver/serial reveals the exact character counts for
++ * serial links which is just too easy to abuse for inferring
++ * password lengths and inter-keystroke timings during password
++ * entry.
++ */
++ proc_tty_driver = proc_mkdir_mode("tty/driver", S_IRUSR | S_IXUSR, 0);
+
+ create_proc_read_entry("tty/ldiscs", 0, 0, tty_ldiscs_read_proc,NULL);
+ create_proc_read_entry("tty/drivers", 0, 0, tty_drivers_read_proc,NULL);
+--- kernel-source-2.4.26/include/linux/proc_fs.h 2003-11-29 05:26:21.000000000 +1100
++++ kernel-source-2.4.26-1/include/linux/proc_fs.h 2003-11-29 20:53:51.000000000 +1100
+@@ -142,6 +142,7 @@
+ struct proc_dir_entry *, const char *);
+ extern struct proc_dir_entry *proc_mknod(const char *,mode_t,
+ struct proc_dir_entry *,kdev_t);
++extern struct proc_dir_entry *proc_mkdir_mode(const char *,mode_t,struct proc_dir_entry *);
+ extern struct proc_dir_entry *proc_mkdir(const char *,struct proc_dir_entry *);
+
+ static inline struct proc_dir_entry *create_proc_read_entry(const char *name,
Added: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/026_binfmt_misc_unload.diff
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/026_binfmt_misc_unload.diff 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/026_binfmt_misc_unload.diff 2004-08-11 18:52:31 UTC (rev 1015)
@@ -0,0 +1,36 @@
+diff -urN kernel-source-2.4.26/fs/binfmt_misc.c kernel-source-2.4.26-1/fs/binfmt_misc.c
+--- kernel-source-2.4.26/fs/binfmt_misc.c 2002-08-03 10:39:45.000000000 +1000
++++ kernel-source-2.4.26-1/fs/binfmt_misc.c 2003-05-18 17:52:06.000000000 +1000
+@@ -682,22 +682,13 @@
+
+ static DECLARE_FSTYPE(bm_fs_type, "binfmt_misc", bm_read_super, FS_SINGLE|FS_LITTER);
+
+-static struct vfsmount *bm_mnt;
+-
+ static int __init init_misc_binfmt(void)
+ {
+ int err = register_filesystem(&bm_fs_type);
+ if (!err) {
+- bm_mnt = kern_mount(&bm_fs_type);
+- err = PTR_ERR(bm_mnt);
+- if (IS_ERR(bm_mnt))
++ err = register_binfmt(&misc_format);
++ if (err) {
+ unregister_filesystem(&bm_fs_type);
+- else {
+- err = register_binfmt(&misc_format);
+- if (err) {
+- unregister_filesystem(&bm_fs_type);
+- kern_umount(bm_mnt);
+- }
+ }
+ }
+ return err;
+@@ -707,7 +698,6 @@
+ {
+ unregister_binfmt(&misc_format);
+ unregister_filesystem(&bm_fs_type);
+- kern_umount(bm_mnt);
+ }
+
+ EXPORT_NO_SYMBOLS;
Added: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/027_vfat_cries_wolf.diff
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/027_vfat_cries_wolf.diff 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/027_vfat_cries_wolf.diff 2004-08-11 18:52:31 UTC (rev 1015)
@@ -0,0 +1,12 @@
+diff -urN kernel-source-2.4.26/fs/fat/file.c kernel-source-2.4.26-1/fs/fat/file.c
+--- kernel-source-2.4.26/fs/fat/file.c 2001-08-13 03:56:56.000000000 +1000
++++ kernel-source-2.4.26-1/fs/fat/file.c 2003-07-18 21:30:37.000000000 +1000
+@@ -63,7 +63,7 @@
+ if (!create)
+ return 0;
+ if (iblock << sb->s_blocksize_bits != MSDOS_I(inode)->mmu_private) {
+- BUG();
++ printk("FAT: invalid block: %ld %lu\n", iblock, MSDOS_I(inode)->mmu_private);
+ return -EIO;
+ }
+ if (!(iblock % MSDOS_SB(inode->i_sb)->cluster_size)) {
Modified: trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/patch-2.4.26-1
===================================================================
--- trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/patch-2.4.26-1 2004-08-11 18:34:10 UTC (rev 1014)
+++ trunk/kernel-2.4/source/kernel-source-2.4.27-2.4.27/debian/patches/patch-2.4.26-1 2004-08-11 18:52:31 UTC (rev 1015)
@@ -372,10 +372,6 @@
+
+* NFS client seekdir patch
+ http://www.fys.uio.no/~trondmy/src/
-+* SCSI Media Changer
-+ http://bytesex.org/patches/
-+* Big Physical Area Reservation
-+ http://www.polyware.nl/~middelin/hob-v4l.html#bigphysarea
+* Linux 2.5 IPsec stack
+ http://gondor.apana.org.au/~herbert/debian/kernel/ipsec/
+ . This is essentially David Miller's 2.4 backport with a number of small
@@ -397,45 +393,26 @@
+* Fixed pegasus_set_multicast lockup.
+* Fixed dead lock on shutdown in 8139too.
+* Don't kill page cache entries in set_blocksize.
-+* Added support for nm256xl+ (Mattia Monga).
+* Fixed handling of HIDs with product strings bug no manufacturer.
+* Fixed the use of return values from mem*_io in drivers/isdn/sc.
-+* Added missing headers in drivers/pcmcia/i82092.c.
-+* Added missing headers in drivers/isdn/hisax/avma1_cs.c.
+* Fixed compile error in drivers/scsi/dpt_i2o.c on alpha.
+* Extern inline -> static inline in drivers/net/hamradio/soundmodem.
+* Added asm/io.h for in*/out* to drivers/net/wan/farsync.c.
+* Corrected AdvWriteDWordLramNoSwap in drivers/scsi/advansys.c.
-+* Fix slashes in broken Acorn ISO9660 images in fs/isofs/dir.c (Darren Salt).
+* Always call complete after unlinking an urb in drivers/usb/host/usb-ohci.c.
+* Set time fields to zero in fs/cramfs/inode.c.
+* Fixed umsdos_solve_hlink oops in fs/umsdos/dir.c.
-+* Removed period check for executables in fs/isofs/inode.c.
-+* Modularised VESA FB.
-+* Replaced BUG() with printk() in fs/fat/file.c.
-+* Do not get seqno if we will not use it in fs/isofs/inode.c.
+* Made CONFIG_PARIDE_EPATC8 into a runtime option.
+* Removed CONFIG_INET_ECN check in net/ipv4/tcp_diag.c.
+* Added dependency on MTD_CONCAT for sc520cdp in drivers/mtd/maps/Config.in.
+* Fixed printk warnings in init/do_mounts.c.
+* Fixed dupliate detection problem in drivers/net/tokenring/ibmtr.c.
+* Changed all occurances of infobox+sleep to msgbox in scripts/Menuconfig.
-+* Fixed initialisation error handling in drivers/block/cpqarray.c.
+* Fixed size of default_port in drivers/net/via-rhine.c.
+* Paper over X server bug in drivers/char/drm/i810_dma.c.
-+* Made binfmt_misc unloadable again in fs/binfmt_misc.c.
+* Use seq interface for /proc/modules:
+ . fs/proc/proc_misc.c
+ . kernel/module.c
-+* Setup two 1G mappings if cia_rev == 1 in arch/alpha/kernel/core_cia.c.
-+* Fixed IDE modularisation:
-+ . include/linux/ide.h
-+ . drivers/ide/Config.in
-+ . drivers/ide/ide.c
-+ . drivers/ide/ide-probe.c
-+ . drivers/ide/ide-proc.c
-+ . drivers/ide/setup-pci.c
-+ . drivers/ide/pci/atiixp.c
+* Include linux/socket.h in include/linux/netlink.h (2.5).
+* Include linux/skbuff.h for skb_put in include/linux/netlink.h.
+* Include linux/spinlock.h for spinlock_t in include/linux/interrupt.h.
@@ -446,63 +423,27 @@
+* Include net/sock.h for struct sock in include/net/ip6_route.h.
+* Include linux/types.h for __u32 in include/linux/watchdog.h.
+* Added forward declaration for struct net_device in include/linux/skbuff.h.
-+* Applied 486 emulation patch (Willy Tarreau):
-+ . Documentation/Configure.help
-+ . arch/i386/config.in
-+ . arch/i386/kernel/Makefile
-+ . arch/i386/kernel/emu.c
-+ . arch/i386/kernel/entry.S
+* Use spinlock_t filler even with gcc 2.96 in include/linux/spinlock.h.
+* Made CONFIG_IDEDISK_STROKE a runtime option (Joerg Platte):
+ . include/linux/ide.h
+ . drivers/ide/ide.c
+ . drivers/ide/ide-disk.c
+* Cope with exit status 2 from md5sum in drivers/isdn/hisax/cert.c.
-+* Fixed printk format in fs/fat/file.c.
+* Fixed macro redefinition warning in fs/nfs/nfs3proc.c.
-+* Fixed binutils test in scripts/ver_linux.
-+* Made /proc/tty/driver root-only (CAN-2003-0461):
-+ . include/linux/proc_fs.h
-+ . fs/proc/generic.c
-+ . fs/proc/proc_tty.c
+* Fixed CONFIG_IDEDISK_STROKE in drivers/ide/ide-disk.c (2.6).
+* Removed -Werror in drivers/scsi/aic7xxx/Makefile.
-+* Handle j_commit_interval == 0:
-+ . fs/jbd/journal.c
-+ . fs/jbd/transaction.c
+* Do not unshare files for pid == 1 in kernel/fork.c.
-+* Added CONFIG_ACPI_OFF option:
-+ . Documentation/Configure.help
-+ . arch/i386/kernel/setup.c
-+ . drivers/acpi/Config.in
-+* Added optimise by size option:
-+ . Documentation/Configure.help
-+ . Makefile
-+ . arch/i386/config.in
+* Fixed wrong address in ICMP log entry in net/ipv4/icmp.c (2.5).
-+* Fixed double request_region:
-+ . drivers/net/arcnet/com20020.c
-+ . drivers/net/arcnet/com20020-isa.c
-+ . drivers/net/arcnet/com20020-pci.c
+* Made AMD_PM768 conditional on X86/X86_64 in drivers/char/Config.in.
-+* Removed floating operations in drivers/net/amd8111e.* (2.5).
-+* Removed bogus panic calls in arch/i386/kernel/mpparse.c (Jochen Voss).
-+* Fixed red/blue typo in drivers/video/radeonfb.c.
-+* Set fb owner in drivers/video/radeonfb.c.
+* Fixed DMA overruns/bugs in drivers/sound/i810_audio.c.
+* Fixed dev timer SMP deadlock in drivers/scsi/aic7xxx/aic7xxx_osm.c
+ (Andrew Morton).
+* Black listed "TOSHIBA CD-ROM XM-1702BC" in drivers/ide/ide-dma.c
+ (Moritz Lennert).
-+* Tighten sanity in time_init to 250 PPM in arch/alpha/kernel/time.c
-+ (Scott Bailey).
-+* Call mkdep on headers with xargs in Makefile.
+* Fixed tuner support on WinTV-D boards in drivers/media/video/bttv-cards.c
+ (2.6).
+* Fixed boundary checks for GUSAGE/SUSAGE in drivers/usb/hiddev.c.
+* Fixed copy_to_user usage in drivers/usb/hiddev.c.
-+* Fixed build without procfs in drivers in drivers/hotplug/Makefile.
-+* Removed cmpxchg definition in drivers/char/drm/drmP.h.
+
+Changes to comments and documentation:
+
@@ -6717,27 +6658,6 @@
static u8 mii_phy_probe(pegasus_t * pegasus)
-diff -urN kernel-source-2.4.26/drivers/video/radeonfb.c kernel-source-2.4.26-1/drivers/video/radeonfb.c
---- kernel-source-2.4.26/drivers/video/radeonfb.c 2004-04-14 23:05:39.000000000 +1000
-+++ kernel-source-2.4.26-1/drivers/video/radeonfb.c 2004-04-17 14:24:02.000000000 +1000
-@@ -935,6 +935,7 @@
- #endif /* CONFIG_PMAC_BACKLIGHT */
-
- static struct fb_ops radeon_fb_ops = {
-+ owner: THIS_MODULE,
- fb_get_fix: radeonfb_get_fix,
- fb_get_var: radeonfb_get_var,
- fb_set_var: radeonfb_set_var,
-@@ -2368,7 +2369,7 @@
- disp->visual = FB_VISUAL_DIRECTCOLOR;
- v.red.offset = 10;
- v.green.offset = 5;
-- v.red.offset = 0;
-+ v.blue.offset = 0;
- v.red.length = v.green.length = v.blue.length = 5;
- v.transp.offset = v.transp.length = 0;
- break;
-
diff -urN kernel-source-2.4.26/fs/Config.in kernel-source-2.4.26-1/fs/Config.in
--- kernel-source-2.4.26/fs/Config.in 2004-02-19 00:36:31.000000000 +1100
+++ kernel-source-2.4.26-1/fs/Config.in 2004-04-17 13:32:34.000000000 +1000
@@ -6838,42 +6758,6 @@
{
return 0;
}
-diff -urN kernel-source-2.4.26/fs/binfmt_misc.c kernel-source-2.4.26-1/fs/binfmt_misc.c
---- kernel-source-2.4.26/fs/binfmt_misc.c 2002-08-03 10:39:45.000000000 +1000
-+++ kernel-source-2.4.26-1/fs/binfmt_misc.c 2003-05-18 17:52:06.000000000 +1000
-@@ -682,22 +682,13 @@
-
- static DECLARE_FSTYPE(bm_fs_type, "binfmt_misc", bm_read_super, FS_SINGLE|FS_LITTER);
-
--static struct vfsmount *bm_mnt;
--
- static int __init init_misc_binfmt(void)
- {
- int err = register_filesystem(&bm_fs_type);
- if (!err) {
-- bm_mnt = kern_mount(&bm_fs_type);
-- err = PTR_ERR(bm_mnt);
-- if (IS_ERR(bm_mnt))
-+ err = register_binfmt(&misc_format);
-+ if (err) {
- unregister_filesystem(&bm_fs_type);
-- else {
-- err = register_binfmt(&misc_format);
-- if (err) {
-- unregister_filesystem(&bm_fs_type);
-- kern_umount(bm_mnt);
-- }
- }
- }
- return err;
-@@ -707,7 +698,6 @@
- {
- unregister_binfmt(&misc_format);
- unregister_filesystem(&bm_fs_type);
-- kern_umount(bm_mnt);
- }
-
- EXPORT_NO_SYMBOLS;
diff -urN kernel-source-2.4.26/fs/block_dev.c kernel-source-2.4.26-1/fs/block_dev.c
--- kernel-source-2.4.26/fs/block_dev.c 2003-06-14 00:51:37.000000000 +1000
+++ kernel-source-2.4.26-1/fs/block_dev.c 2003-06-01 20:43:53.000000000 +1000
@@ -6886,17 +6770,7 @@
bdput(bdev);
return 0;
}
-diff -urN kernel-source-2.4.26/fs/buffer.c kernel-source-2.4.26-1/fs/buffer.c
---- kernel-source-2.4.26/fs/buffer.c 2004-02-19 00:36:31.000000000 +1100
-+++ kernel-source-2.4.26-1/fs/buffer.c 2004-02-22 20:28:30.000000000 +1100
-@@ -799,6 +799,7 @@
- bh->b_list = BUF_CLEAN;
- bh->b_end_io = handler;
- bh->b_private = private;
-+ bh->b_journal_head = NULL;
- }
-
- void end_buffer_io_async(struct buffer_head * bh, int uptodate)
+
diff -urN kernel-source-2.4.26/fs/cramfs/inode.c kernel-source-2.4.26-1/fs/cramfs/inode.c
--- kernel-source-2.4.26/fs/cramfs/inode.c 2002-08-03 10:39:45.000000000 +1000
+++ kernel-source-2.4.26-1/fs/cramfs/inode.c 2002-08-30 20:40:16.000000000 +1000
@@ -11844,18 +11718,7 @@
+ ext3_xattr_unregister(EXT3_XATTR_INDEX_USER,
+ &ext3_xattr_user_handler);
+}
-diff -urN kernel-source-2.4.26/fs/fat/file.c kernel-source-2.4.26-1/fs/fat/file.c
---- kernel-source-2.4.26/fs/fat/file.c 2001-08-13 03:56:56.000000000 +1000
-+++ kernel-source-2.4.26-1/fs/fat/file.c 2003-07-18 21:30:37.000000000 +1000
-@@ -63,7 +63,7 @@
- if (!create)
- return 0;
- if (iblock << sb->s_blocksize_bits != MSDOS_I(inode)->mmu_private) {
-- BUG();
-+ printk("FAT: invalid block: %ld %lu\n", iblock, MSDOS_I(inode)->mmu_private);
- return -EIO;
- }
- if (!(iblock % MSDOS_SB(inode->i_sb)->cluster_size)) {
+
diff -urN kernel-source-2.4.26/fs/intermezzo/vfs.c kernel-source-2.4.26-1/fs/intermezzo/vfs.c
--- kernel-source-2.4.26/fs/intermezzo/vfs.c 2003-06-14 00:51:37.000000000 +1000
+++ kernel-source-2.4.26-1/fs/intermezzo/vfs.c 2004-04-17 13:32:29.000000000 +1000
@@ -13477,38 +13340,6 @@
+
+ return 0;
+}
-diff -urN kernel-source-2.4.26/fs/proc/generic.c kernel-source-2.4.26-1/fs/proc/generic.c
---- kernel-source-2.4.26/fs/proc/generic.c 2003-11-29 05:26:21.000000000 +1100
-+++ kernel-source-2.4.26-1/fs/proc/generic.c 2003-11-29 20:53:47.000000000 +1100
-@@ -486,12 +486,12 @@
- return ent;
- }
-
--struct proc_dir_entry *proc_mkdir(const char *name, struct proc_dir_entry *parent)
-+struct proc_dir_entry *proc_mkdir_mode(const char *name, mode_t mode,
-+ struct proc_dir_entry *parent)
- {
- struct proc_dir_entry *ent;
-
-- ent = proc_create(&parent,name,
-- (S_IFDIR | S_IRUGO | S_IXUGO),2);
-+ ent = proc_create(&parent, name, S_IFDIR | mode, 2);
- if (ent) {
- ent->proc_fops = &proc_dir_operations;
- ent->proc_iops = &proc_dir_inode_operations;
-@@ -504,6 +504,12 @@
- return ent;
- }
-
-+struct proc_dir_entry *proc_mkdir(const char *name,
-+ struct proc_dir_entry *parent)
-+{
-+ return proc_mkdir_mode(name, S_IRUGO | S_IXUGO, parent);
-+}
-+
- struct proc_dir_entry *create_proc_entry(const char *name, mode_t mode,
- struct proc_dir_entry *parent)
- {
diff -urN kernel-source-2.4.26/fs/proc/proc_misc.c kernel-source-2.4.26-1/fs/proc/proc_misc.c
--- kernel-source-2.4.26/fs/proc/proc_misc.c 2003-11-29 05:26:21.000000000 +1100
+++ kernel-source-2.4.26-1/fs/proc/proc_misc.c 2003-11-29 20:53:47.000000000 +1100
@@ -13562,24 +13393,6 @@
#endif
proc_root_kcore = create_proc_entry("kcore", S_IRUSR, NULL);
if (proc_root_kcore) {
-diff -urN kernel-source-2.4.26/fs/proc/proc_tty.c kernel-source-2.4.26-1/fs/proc/proc_tty.c
---- kernel-source-2.4.26/fs/proc/proc_tty.c 2000-04-22 08:17:57.000000000 +1000
-+++ kernel-source-2.4.26-1/fs/proc/proc_tty.c 2003-07-23 21:12:10.000000000 +1000
-@@ -174,7 +174,13 @@
- if (!proc_mkdir("tty", 0))
- return;
- proc_tty_ldisc = proc_mkdir("tty/ldisc", 0);
-- proc_tty_driver = proc_mkdir("tty/driver", 0);
-+ /*
-+ * /proc/tty/driver/serial reveals the exact character counts for
-+ * serial links which is just too easy to abuse for inferring
-+ * password lengths and inter-keystroke timings during password
-+ * entry.
-+ */
-+ proc_tty_driver = proc_mkdir_mode("tty/driver", S_IRUSR | S_IXUSR, 0);
-
- create_proc_read_entry("tty/ldiscs", 0, 0, tty_ldiscs_read_proc,NULL);
- create_proc_read_entry("tty/drivers", 0, 0, tty_drivers_read_proc,NULL);
diff -urN kernel-source-2.4.26/fs/proc/root.c kernel-source-2.4.26-1/fs/proc/root.c
--- kernel-source-2.4.26/fs/proc/root.c 2002-08-03 10:39:45.000000000 +1000
+++ kernel-source-2.4.26-1/fs/proc/root.c 2002-08-05 21:23:29.000000000 +1000
@@ -16287,17 +16100,6 @@
#define PPP_LCP 0xc021 /* Link Control Protocol */
#define PPP_PAP 0xc023 /* Password Authentication Protocol */
#define PPP_LQR 0xc025 /* Link Quality Report protocol */
-diff -urN kernel-source-2.4.26/include/linux/proc_fs.h kernel-source-2.4.26-1/include/linux/proc_fs.h
---- kernel-source-2.4.26/include/linux/proc_fs.h 2003-11-29 05:26:21.000000000 +1100
-+++ kernel-source-2.4.26-1/include/linux/proc_fs.h 2003-11-29 20:53:51.000000000 +1100
-@@ -142,6 +142,7 @@
- struct proc_dir_entry *, const char *);
- extern struct proc_dir_entry *proc_mknod(const char *,mode_t,
- struct proc_dir_entry *,kdev_t);
-+extern struct proc_dir_entry *proc_mkdir_mode(const char *,mode_t,struct proc_dir_entry *);
- extern struct proc_dir_entry *proc_mkdir(const char *,struct proc_dir_entry *);
-
- static inline struct proc_dir_entry *create_proc_read_entry(const char *name,
diff -urN kernel-source-2.4.26/include/linux/rtnetlink.h kernel-source-2.4.26-1/include/linux/rtnetlink.h
--- kernel-source-2.4.26/include/linux/rtnetlink.h 2004-02-19 00:36:32.000000000 +1100
+++ kernel-source-2.4.26-1/include/linux/rtnetlink.h 2004-04-17 10:10:28.000000000 +1000