linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Linux 2.6.0-test9
@ 2003-10-25 19:09 Linus Torvalds
  2003-10-25 19:52 ` Marcelo Tosatti
                   ` (6 more replies)
  0 siblings, 7 replies; 52+ messages in thread
From: Linus Torvalds @ 2003-10-25 19:09 UTC (permalink / raw)
  To: Kernel Mailing List


Ok, 2.6.0-test9 is out there in all the normal places..

First off, I have to say that this week has been a lot better than last
week. I've been cursing at some developers a _lot_ less: while a lot of
people wanted to sync up with me after the -test7 "stability freeze"  
announcements with stuff that wasn't really about stability, that dropped
off a lot this week, and I didn't have to be rude to people very much at
all.

There's some XFS and cifs updates here, but even they were pretty benign
and largely just bugfixes. Oh, and the SATA driver got included, which you
either disable or which allows people to use modern hardware. 

Anyway, while I've been happy with the progress from -test7, I want to see
this total stability freeze work even better. The test9 patch is about 
120kB compressed - which is small for a week of work, but is still more 
than I want to see before a stable release.

So guys, let's work on this even more for test10. I'm going to _totally_
ignore patches that aren't for major bugs. Don't send me anything that
_others_ wouldn't consider horribly critical.

In other words, even if you think that something is the most important
piece of software in the world, if you can't make aunt Tilly up the street
say "oh, but that would be a show-stopper", then don't bother sending it 
to me.

If it corrupts data, is a security issue, or causes lockups or just basic
nonworkingness: and this happens on hardware that _normal_ people are
expected to have, then it's critical.  Otherwise, it's noise and should
wait.

If this works out, then I'll submit -test10 to Andrew Morton, and if he 
takes it we'll probably have a real 2.6.0 after a final shakedown. So try 
to help, please. We'll all be happier.

			Linus

----
Summary of changes from v2.6.0-test8 to v2.6.0-test9
============================================

Alan Stern:
  o USB: fix for earlier unusual_devs.h patch

Alex Williamson:
  o ia64: trivial ia64 numa/discontig fixes

Alexander Schulz:
  o [ARM PATCH] 1692/1: Shark: PCIMEM_BASE

Alexander Viro:
  o Fix initrd with devfs enabled
  o fix for do_tty_hangup() access of kfreed memory

Alexey Kuznetsov:
  o TCP: do not return -EINTR, when data are available for read()

Andrew Morton:
  o [NET]: Make register_netdevice return correct error when driver
    init function fails
  o fix split_vma vs. invalidate_mmap_range_list race
  o scsi: handle zero-length requests
  o ia32 limit_regions update
  o Fix unmap_vmas() compile warning
  o Time precision, adjtime(x) vs. gettimeofday
  o atp870u oops fix
  o tmpfs 1/7 LTP ENAMETOOLONG fix
  o tmpfs 2/7 LTP S_ISGID on directories fix
  o tmpfs 3/7 swapoff/truncate race fix
  o tmpfs 4/7 getpage/truncate race fix
  o tmpfs 5/7 writepage/truncate race fix
  o tmpfs 6/7 write i_size_write
  o tmpfs 7/7 write mark_page_accessed
  o Quota deadlock fix
  o export system_running to other files
  o Kill early might_sleep warnings
  o digi_acceleport.c has bogus "address of" operator
  o fix microcode.c for older gcc's
  o Fix mtd printk warnings
  o fs/binfmt_elf.c:load_elf_binary() doesn't verify interpreter arch
  o JBD kfree() fix
  o Fix JBD memory leak
  o fix low-memory BUG in slab
  o fix for register_cpu()
  o fix bluetooth broken compilation when PROC_FS=n
  o make printk more robust with "null" pointers
  o kcapi.c CONFIG_MODULES=n build fix
  o DRM modprobe retval fix
  o parport_pc not releasing all ioports
  o Fix oops with CONFIG_MCA=y
  o Fix another CONFIG_MCA=y oops
  o ipc msg race fix
  o io scheduler oops fixes
  o pcm_native locking fix
  o Fix toshiba.c and neofb.c for CONFIG_PROC_FS=n
  o v850: Workaround for tty-driver init-order problem
  o v850: Don't reserve root-filesystem memory twice
  o v850: Use irqreturn_t on rte-me2-cb platform
  o Add needed __devexit_p's to two gameport drivers
  o /dev/mem range checking
  o Kill unneccessary debug printk
  o Fix arlan compilation with CONFIG_PROC_FS=n
  o Altix console driver
  o befs oops fix
  o early_serial_setup array bounds check

Arnaldo Carvalho de Melo:
  o leaking info on drivers/usb

Arun Sharma:
  o ia64: make strace of ia32 processes work again
  o ia64: don't touch IA-32 segment descriptors too early
  o ia64: fix broken __emul_prefix

Bart De Schuymer:
  o [EBTABLES]: Adjust skb->pkt_type when necessary

Bartlomiej Zolnierkiewicz:
  o fix drivers/ide/pci/siimage.c for PROC_FS=n
  o fix drivers/ide/pci/cmd640.c for CONFIG_PCI=n

Bjorn Helgaas:
  o ia64: fix EFI memory map trimming
  o ia64: prevent "dd if=/dev/mem" crash

Carsten Busse:
  o USB: one more digicam for unusual_devs.h

Dan Aloni:
  o [NET]: Fix sysctl breakage during network device renaming

Dave Jiang:
  o [ARM PATCH] 1691/1: Fix IOP321 platform booting in 2.6

David Brownell:
  o USB: ACM USB modem fixes
  o USB: fix usb-storage self-deadlock
  o USB: usb enumeration clears full speed ep0 state

David Mosberger:
  o ia64: Add missing exports to modules build again
  o ia64: Fix printk format error
  o ia64: Don't mix code and declarations (not C90-compliant)
  o ia64: Sync with i386 irq.c (deadlock avoidance for certain
    disable_irq()/ enable_irq() sequences).
  o ia64: Based on patch by Arun Sharma: fix IA-32 subsystem to support
    NPTL
  o ia64: Fix IA-32 NPTL fixes so things compile again
  o ia64: Fix efi_mem_type() and efi_mem_attributes() to avoid
    potential underflows.  In my case, the underflows occurred with the
    first memory descriptor which got trimmed down to a size of 0.
  o ia64: Patch by Arun Sharma: fix allocation/handling of GDT shared
    page (the old code was inconsistent and in places still assumed
    there is both a GDT and a TSS shared page, but the latter was
    removed a long time ago).
  o ia64: Sync with Linus' i386 patch: Revert bogus IRQ_INPROGRESS
    clear
  o ia64: Fix/finish kernel module table support so it actually works

David S. Miller:
  o [NET]: Undo deprecation of init_etherdev, we will add it back once
    all in-tree drivers are fixed
  o [LLC]: Make LLC2 compile with PROC_FS=n
  o [NET]: sysctl_net_core.c needs linux/module.h
  o [IPV6]: Set fl->proto in _decode_sesseion6
  o [TG3]: Disable/enable timer in suspend/resume
  o [NET COMPAT]: Fix hangs caused by bugs in do_netfilter_replace()
  o [SPARC]: Fix do_gettimeofday() as per cset 1.1347.1.17
  o [SPARC64]: Get hugetlb support back into working shape

David T. Hollis:
  o USB: ax8817x fixes in usbnet.c

Douglas Gilbert:
  o SCSI constants.c

Gerd Knorr:
  o Fix bttv BUG() at video-buf.c:378

Glen Overby:
  o [XFS] Fix problem with the debug code in xlog_state_do_callback
  o [XFS] remove xfs_dir2_node_addname_int remnants of an old block
    placement algorithm

Greg Kroah-Hartman:
  o USB: gadget fixes for 64bit processor warnings

Herbert Xu:
  o [NET]: More build fixes for CONFIG_XFRM disabled

Ian Abbott:
  o USB: ftdi_sio - Perle UltraPort new ids

Ian Wienand:
  o ia64: fix gate-data.S build for binutils 2.14

James Cleverdon:
  o Allow more APIC irq sources

Jeff Garzik:
  o [libata] Merge Serial ATA core, and drivers for
  o [libata] Integrate Serial ATA driver into kernel tree

Jesse Barnes:
  o ia64: fix topology init
  o ia64: zero out topology related sysfs nodes

Knut Petersen:
  o input / keyboard / Scancode Set 3 support broken
  o setkeycode ioctl fix

Len Brown:
  o [ACPI] speed up reads from /proc/acpi/ (Shaohua David Li)
    http://bugme.osdl.org/show_bug.cgi?id=726
  o [ACPI] fix object reference count bug for battery status (Shaohua
    David Li) http://bugme.osdl.org/show_bug.cgi?id=1038
  o [ACPI] acpi_ec_gpe_query(ec) fix for T40 crash (Shaohua David Li)
    http://bugme.osdl.org/show_bug.cgi?id=1171
  o [ACPI] fix acpi_ev_gpe_dispatch() parameter (Bob Moore)
  o [ACPI] fix !CONFIG_PCI build use X86 ACPI specific version of
    eisa_set_level_irq()
    http://bugzilla.kernel.org/show_bug.cgi?id=1390
  o [ACPI] Broken fan detection prevents booting (Shaohua David Li)
    http://bugme.osdl.org/show_bug.cgi?id=1185

Linus Torvalds:
  o bcopy() doesn't return anything
  o Make the pc9800, visws and voyager sub-architectures tell us their
    NR_IRQ_VECTORS.
  o Revert bogus IRQ_INPROGRESS clear
  o Make yenta allocate IO resource windows in same range as in 2.4.x
  o Add a quirk for the Intel ICH-[45] to add special ACPI regions

Mark Haverkamp:
  o Work around aacraid FW problem

Michael Hunold:
  o Fix bugs in various DVB drivers
  o Fix bug in saa7146 analog tv i2c-handling
  o Fix bugs in analog tv i2c-helper chipset drivers

Mike Anderson:
  o Add release function to sd for scsi_disk structure

Mike Christie:
  o fix oops caused when writing to the rescan attribute

Nathan Scott:
  o [XFS] Fix inode btree lookup code precision problem with large
    allocation groups
  o [XFS] final round of code cleanup, now using 3-clause-bsd in these
    headers
  o [XFS] Use an xfs_ino_t to hold the result of inode extraction from
    a handle, not a possibly 32-bit number

Neil Brown:
  o md -  Use sector rather than block numbers when splitting raid0
    requests
  o kNFSd -  In READDIRPLUS reply, don't return a file handle for a
    mounted directory

Pat LaVarre:
  o SG_SET_RESERVED_SIZE negative oops

Patrick Mansfield:
  o SCSI: limit mode sense usage

Russell King:
  o [NET]: Prevent 'eth0: driver changed get_stats after register' from
    lying
  o [ARM] Correct acornfb arguments for fb_set_var()

Stephen Lord:
  o [XFS] Change XFS maintainer

Steve French:
  o check return code on failed kmalloc.  list management bugs.  fix
    xid going negative
  o Fix spinlock usage for SMP safety
  o Fix various SMP/locking problems pointed out by Shoobhit Dayal and
    Arjan van de Ven
  o Remove illegal kunmap
  o Missing spin_unlock in error path and extraneous kunmap in
    cifs_writepages
  o missing cifs mount options
  o add missing mount option iocharset to cifs vfs
  o list processing fixes in cifs reopen_files
  o Fix case where server hung but tcpip session still good.  Fix
    double request of same spinlock
  o don't kill demultiplex thread on ERESTARTSYS
  o missing check for eagain on sock ops
  o fix loop on mount failure of session setup
  o fixes to not prematurely exit demultiplex captive thread

Stéphane Eranian:
  o ia64: two perfmon fixes
  o ia64: fix critical perfmon2 bugs

Zwane Mwaikambo:
  o [IPV6]: Fix sit.c compilation w/o CONFIG_XFRM



^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26  1:16 Andries.Brouwer
  2003-10-26  3:12 ` OGAWA Hirofumi
  2003-10-26  5:48 ` Linus Torvalds
  0 siblings, 2 replies; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-26  1:16 UTC (permalink / raw)
  To: torvalds; +Cc: linux-kernel

Three things:

2.6.0t9 still can leave the user with a dead keyboard
If Vojtech does not provide a better patch I suppose
you should apply my patch of a few days ago.

Within a few days two people have reported that they cannot
mount a FAT fs that 2.4 and Windows handle fine.
Probably also that should be fixed, for example with
my patch from yesterday.

I have run 2.6.0-test6 without any problems. Switched
to 2.6.0-test9 today. Something involving job control
or so is broken. Several of my remote xterms hang.
Will investigate later.

Andries

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 10:26 Andries.Brouwer
  0 siblings, 0 replies; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-26 10:26 UTC (permalink / raw)
  To: Andries.Brouwer, hirofumi; +Cc: linux-kernel

    From: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>

    Andries.Brouwer@cwi.nl writes:

    > Within a few days two people have reported that they cannot
    > mount a FAT fs that 2.4 and Windows handle fine.
    > Probably also that should be fixed, for example with
    > my patch from yesterday.

    Was the other report by private email?

Yes. Mark McPherson wrote:

  I have an Archos Jukebox Recorder 20 which has never been
  re-formatted since I purchased it.  It fails to mount under 2.6 with
  the same report as the flash card, and also mounts successfully under 2.4.
  Patching around the code as you suggested allows it to mount without
  complaint under 2.6.
  Win2K thinks this file system is just fine.

Andries



^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 10:59 Andries.Brouwer
  2003-10-27 23:37 ` bill davidsen
  0 siblings, 1 reply; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-26 10:59 UTC (permalink / raw)
  To: Andries.Brouwer, torvalds; +Cc: linux-kernel

> Pls forward.

Below a keyboard patch I sent to l-k 12 days ago.
Discussion:

Petr Vandrovec reported

> got (twice, but yesterday I rebooted box hard, as I thought that it is dead)
> strange lockup, where box stopped reacting on keyboard.

and

> Oct 14 19:59:18 ppc kernel: i8042.c: e0 <- i8042 (interrupt, kbd, 1) [30115341]
> Oct 14 19:59:18 ppc kernel: i8042.c: ed -> i8042 (kbd-data) [30115342]
> Oct 14 19:59:18 ppc kernel: i8042.c: fa <- i8042 (interrupt, kbd, 1) [30115346]
> Oct 14 19:59:18 ppc kernel: atkbd.c: Unknown key released (translated set 2, code 0x165, data 0xfa, on isa0060/serio0).

What happens is that the kernel code does an untranslate on the 0xfa
that is the ACK for 0xed (set LEDs) when 0xe0 preceded. Now the ACK
is never seen and we hang waiting for it.

Now 0xfa can be a key scancode or it can be a protocol scancode.
Only few keyboards use it as a key scancode, and if we always
interpret it as a protocol scancode then these rare keyboards
will have a dead key. If we interpret it as a key scancode then
we have a dead keyboard in case it was protocol.

The below patch moves the test for ACK and NAK up, so that they
are always seen as protocol.

This is just a minimal patch. What I did in 1.1.54 was to keep track of
commands sent with a flag reply_expected, so that 0xfa could be taken
as ACK when a reply is expected and as key scancode otherwise.
That is the better solution, but requires larger surgery.

Andries


diff -u --recursive --new-file -X /linux/dontdiff a/drivers/input/keyboard/atkbd.c b/drivers/input/keyboard/atkbd.c
--- a/drivers/input/keyboard/atkbd.c	Sun Oct 26 00:00:10 2003
+++ b/drivers/input/keyboard/atkbd.c	Sun Oct 26 02:28:24 2003
@@ -184,11 +184,19 @@
 		atkbd->resend = 0;
 #endif
 
+	switch (code) {
+		case ATKBD_RET_ACK:
+			atkbd->ack = 1;
+			goto out;
+		case ATKBD_RET_NAK:
+			atkbd->ack = -1;
+			goto out;
+	}
+
 	if (atkbd->translated) do {
 
 		if (atkbd->emul != 1) {
-			if (code == ATKBD_RET_EMUL0 || code == ATKBD_RET_EMUL1 ||
-			    code == ATKBD_RET_ACK || code == ATKBD_RET_NAK)
+			if (code == ATKBD_RET_EMUL0 || code == ATKBD_RET_EMUL1)
 				break;
 			if (code == ATKBD_RET_BAT) {
 				if (!atkbd->bat_xl)
@@ -212,15 +220,6 @@
 
 	} while (0);
 
-	switch (code) {
-		case ATKBD_RET_ACK:
-			atkbd->ack = 1;
-			goto out;
-		case ATKBD_RET_NAK:
-			atkbd->ack = -1;
-			goto out;
-	}
-
 	if (atkbd->cmdcnt) {
 		atkbd->cmdbuf[--atkbd->cmdcnt] = code;
 		goto out;

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 11:08 Andries.Brouwer
  2003-10-26 13:57 ` OGAWA Hirofumi
  0 siblings, 1 reply; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-26 11:08 UTC (permalink / raw)
  To: Andries.Brouwer, torvalds; +Cc: linux-kernel

> Pls forward.

The first FAT entry should have the media byte (0xf0,0xf8,...,0xff)
extended with all 1 bits in the first FAT entry.
Checking this is a good idea, it prevents us from mounting garbage
as FAT - there is no good magic for FAT.
Unfortunately, Windows does not enforce this, and 2.4 doesn't either.
It turns out that there are filesystems around (two reports so far)
that have a zero first FAT entry, and work under Windows and 2.4 but
fail to mount under 2.6.

So, the below weakens the test.

Andries

[one report was with a SmartMedia card, the other with an
Archos Jukebox Recorder 20]

diff -u --recursive --new-file -X /linux/dontdiff a/fs/fat/inode.c b/fs/fat/inode.c
--- a/fs/fat/inode.c	Wed Oct 22 23:25:26 2003
+++ b/fs/fat/inode.c	Sun Oct 26 02:31:24 2003
@@ -964,13 +964,17 @@
 		error = first;
 		goto out_fail;
 	}
-	if (FAT_FIRST_ENT(sb, media) != first
-	    && (media != 0xf8 || FAT_FIRST_ENT(sb, 0xfe) != first)) {
-		if (!silent) {
+	if (FAT_FIRST_ENT(sb, media) == first) {
+		/* all is as it should be */
+	} else if (media == 0xf8 && FAT_FIRST_ENT(sb, 0xfe) == first) {
+		/* bad, reported on pc9800 */
+	} else if (first == 0) {
+		/* bad, reported with a SmartMedia card */
+	} else {
+		if (!silent)
 			printk(KERN_ERR "FAT: invalid first entry of FAT "
 			       "(0x%x != 0x%x)\n",
 			       FAT_FIRST_ENT(sb, media), first);
-		}
 		goto out_invalid;
 	}
 

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 15:32 Shane Shrybman
  2003-10-26 16:27 ` Marco Roeland
  0 siblings, 1 reply; 52+ messages in thread
From: Shane Shrybman @ 2003-10-26 15:32 UTC (permalink / raw)
  To: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1699 bytes --]

Hi,

gcc2.96, from Mandrake 8.2 (I would suspect that Redhat 7.* releases are
in this boat too) has a bug that prevents the compilation -test9.

fs/proc/array.c: In function `proc_pid_stat':
fs/proc/array.c:398: Unrecognizable insn:
(insn/i 1337 1673 1667 (parallel[ 
            (set (reg:SI 0 eax)
                (asm_operands ("") ("=a") 0[ 
                        (reg:DI 1 edx)
                    ] 
                    [ 
                        (asm_input:DI ("A"))
                    ]  ("include/linux/times.h") 37))
            (set (reg:SI 1 edx)
                (asm_operands ("") ("=d") 1[ 
                        (reg:DI 1 edx)
                    ] 
                    [ 
                        (asm_input:DI ("A"))
                    ]  ("include/linux/times.h") 37))
            (clobber (reg:QI 19 dirflag))
            (clobber (reg:QI 18 fpsr))
            (clobber (reg:QI 17 flags))
        ] ) -1 (insn_list 1331 (nil))
    (nil))
fs/proc/array.c:398: confused by earlier errors, bailing out
make[2]: *** [fs/proc/array.o] Error 1
make[1]: *** [fs/proc] Error 2
make: *** [fs] Error 2

and a little patch that resolves it for me

diff -ur linux-2.6.0-test9/fs/proc/array.c
linux-2.6.0-test9-A/fs/proc/array.c
--- linux-2.6.0-test9/fs/proc/array.c   Sat Oct 25 18:21:46 2003
+++ linux-2.6.0-test9-A/fs/proc/array.c Sat Oct 25 19:14:15 2003
@@ -295,7 +295,8 @@
 {
        unsigned long vsize, eip, esp, wchan;
        long priority, nice;
-       int tty_pgrp = -1, tty_nr = 0;
+       int tty_pgrp = -1;
+       volatile int tty_nr = 0;
        sigset_t sigign, sigcatch;
        char state;
        int res;

Attached as well in case it gets mangled.

Regards,

Shane

[-- Attachment #2: gcc2.96.patch --]
[-- Type: text/x-patch, Size: 428 bytes --]

diff -ur linux-2.6.0-test9/fs/proc/array.c linux-2.6.0-test9-A/fs/proc/array.c
--- linux-2.6.0-test9/fs/proc/array.c	Sat Oct 25 18:21:46 2003
+++ linux-2.6.0-test9-A/fs/proc/array.c	Sat Oct 25 19:14:15 2003
@@ -295,7 +295,8 @@
 {
 	unsigned long vsize, eip, esp, wchan;
 	long priority, nice;
-	int tty_pgrp = -1, tty_nr = 0;
+	int tty_pgrp = -1;
+	volatile int tty_nr = 0;
 	sigset_t sigign, sigcatch;
 	char state;
 	int res;

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 18:51 P. Christeas
  2003-10-27  3:16 ` Andrew Morton
  0 siblings, 1 reply; 52+ messages in thread
From: P. Christeas @ 2003-10-26 18:51 UTC (permalink / raw)
  To: Justin T. Gibbs, linux-kernel; +Cc: Andrew Morton, Andries.Brouwer

>From Andries.Brouwer:
> Three things:
> 
> 2.6.0t9 still can leave the user with a dead keyboard
> If Vojtech does not provide a better patch I suppose
> you should apply my patch of a few days ago.
> 
> Within a few days two people have reported that they cannot
> mount a FAT fs that 2.4 and Windows handle fine.
> Probably also that should be fixed, for example with
> my patch from yesterday.

One more, (as reported a few weeks ago):
rmmod aic7xxx 
will fail, as this module uses some wrong locks. This will also block sleeping 
(tested w. ACPI) if the module is there.
IMHO this module is crucial to many systems.

I'm just repeating this issue, as I cannot see any patch for that. Justin has 
not replied (I will need to be CC'ed). Andrew, who's the maintainer? I wish I 
could help myself solve that, but fixing SMP-safe locks seems the hardest 
thing I could do here. Somebody has to help here.



^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-26 19:40 Andries.Brouwer
  2003-10-27  0:01 ` Andrew Morton
  0 siblings, 1 reply; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-26 19:40 UTC (permalink / raw)
  To: Andries.Brouwer, torvalds; +Cc: linux-kernel, netdev

    From: Linus Torvalds <torvalds@osdl.org>

    > I have run 2.6.0-test6 without any problems. Switched
    > to 2.6.0-test9 today. Something involving job control
    > or so is broken. Several of my remote xterms hang.

    Btw, this one sounds like a known bug in bash.

No - it is a recent kernel bug.
Mikael Pettersson noticed precisely the same thing, and says
 "Reverting 2.6.0-test8-bk3's net/ipv4/tcp.c patch fixes
  these problems."
And so it does.

Andries


^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-27  1:48 Andries.Brouwer
  2003-10-27  2:10 ` Linus Torvalds
  0 siblings, 1 reply; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-27  1:48 UTC (permalink / raw)
  To: akpm, torvalds; +Cc: Andries.Brouwer, davem, kuznet, linux-kernel, netdev

> Andries, what was the situation that led to a TCP lockup?

rlogin followed by "emacs -nw".

rlogin uses SIGURG for communication.

It is not the TCP protocol that is locked up.
Keystrokes are transmitted and the results are sent back.
But the reader half of rlogin hangs.

Andries

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-27  9:47 Mikael Pettersson
  0 siblings, 0 replies; 52+ messages in thread
From: Mikael Pettersson @ 2003-10-27  9:47 UTC (permalink / raw)
  To: Andries.Brouwer, torvalds; +Cc: akpm, davem, kuznet, linux-kernel, netdev

On Sun, 26 Oct 2003 18:10:03 -0800 (PST), Linus Torvalds wrote:
>On Mon, 27 Oct 2003 Andries.Brouwer@cwi.nl wrote:
>> 
>> rlogin followed by "emacs -nw".
>
>Ok. I bet I've never seen it partly because I only use ssh (I don't even
>allow rlogin to any of my machines). But you're right, rlogin certainly
>not only uses OOB data, but uses SIGURG itself. I would actually expect 
>that if we delay the SIGURG until after we've read the URG data, the child 
>process that wants to actually read the URG data will trivially hang, 
>waiting for it.
>
>If this is easily repeatable for you, can you test just applying this
>patch on top of plain -test9? It's not the patch I'd actually do in real 
>life, but it's the minimal patch to verify that it's really SIGURG and 
>urgent data that is the thing you see. Sounds very likely, but it would be 
>good to really verify.

This patch does fix the rlogin + emacs -nw problems.

/Mikael

>--- 1.49/net/ipv4/tcp.c	Mon Oct 20 22:27:42 2003
>+++ edited/net/ipv4/tcp.c	Sun Oct 26 17:59:14 2003
>@@ -1536,9 +1536,15 @@
> 		struct sk_buff *skb;
> 		u32 offset;
> 
>-		/* Are we at urgent data? Stop if we have read anything. */
>-		if (copied && tp->urg_data && tp->urg_seq == *seq)
>-			break;
>+		/* Are we at urgent data? Stop if we have read anything or have SIGURG pending. */
>+		if (tp->urg_data && tp->urg_seq == *seq) {
>+			if (copied)
>+				break;
>+			if (signal_pending(current)) {
>+				copied = timeo ? sock_intr_errno(timeo) : -EAGAIN;
>+				break;
>+			}
>+		}
> 
> 		/* Next get a buffer. */
> 

^ permalink raw reply	[flat|nested] 52+ messages in thread
* Re: Linux 2.6.0-test9
@ 2003-10-27 10:58 Andries.Brouwer
  0 siblings, 0 replies; 52+ messages in thread
From: Andries.Brouwer @ 2003-10-27 10:58 UTC (permalink / raw)
  To: Andries.Brouwer, torvalds; +Cc: akpm, davem, kuznet, linux-kernel, netdev

> If this is easily repeatable for you, can you test just applying this
> patch on top of plain -test9?

Yes, that works.


^ permalink raw reply	[flat|nested] 52+ messages in thread

end of thread, other threads:[~2003-10-30 17:21 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-10-25 19:09 Linux 2.6.0-test9 Linus Torvalds
2003-10-25 19:52 ` Marcelo Tosatti
2003-10-25 20:14 ` viro
2003-10-25 22:35   ` Linus Torvalds
2003-10-25 23:45 ` Jose Luis Domingo Lopez
2003-10-26  0:22 ` 2.6.0-test9: selinux compile error with "make O=..." Adrian Bunk
2003-10-26  9:49   ` Sam Ravnborg
2003-10-27 13:40     ` Stephen Smalley
2003-10-27 18:42       ` Sam Ravnborg
2003-10-28 15:10         ` Stephen Smalley
2003-10-26 12:05 ` Linux 2.6.0-test9 Patrik Wallstrom
2003-10-27 18:21   ` Patrik Wallstrom
2003-10-27 22:51     ` bill davidsen
2003-10-28  2:12       ` Jeff Garzik
2003-10-28  4:52         ` Bill Davidsen
2003-10-26 15:05 ` Linux 2.4 <-> 2.6 compatibility (was: Linux 2.6.0-test9) Matthias Andree
2003-10-26 15:18   ` Linux 2.4 <-> 2.6 compatibility Måns Rullgård
2003-10-27  2:51     ` Matthias Andree
2003-10-26 16:06   ` Jochen Hein
2003-10-26 17:47     ` Fabio Massimo Di Nitto
2003-10-26 18:18       ` Jochen Hein
2003-10-27 16:02 ` Linux 2.6.0-test9 (compile stats) John Cherry
2003-10-26  1:16 Linux 2.6.0-test9 Andries.Brouwer
2003-10-26  3:12 ` OGAWA Hirofumi
2003-10-26  5:48 ` Linus Torvalds
2003-10-27 23:26   ` bill davidsen
2003-10-30  9:20     ` Russell King
2003-10-30 16:44       ` Bill Davidsen
2003-10-30 17:23         ` John Bradford
2003-10-26 10:26 Andries.Brouwer
2003-10-26 10:59 Andries.Brouwer
2003-10-27 23:37 ` bill davidsen
2003-10-26 11:08 Andries.Brouwer
2003-10-26 13:57 ` OGAWA Hirofumi
2003-10-26 15:32 Shane Shrybman
2003-10-26 16:27 ` Marco Roeland
2003-10-26 18:51 P. Christeas
2003-10-27  3:16 ` Andrew Morton
2003-10-26 19:40 Andries.Brouwer
2003-10-27  0:01 ` Andrew Morton
2003-10-27  0:21   ` Linus Torvalds
2003-10-27  0:28     ` Linus Torvalds
2003-10-27  6:43       ` David S. Miller
2003-10-27 19:54         ` kuznet
2003-10-27 19:36     ` kuznet
2003-10-28  0:42       ` Tommy Christensen
2003-10-28 18:25         ` kuznet
2003-10-27  1:48 Andries.Brouwer
2003-10-27  2:10 ` Linus Torvalds
2003-10-27  9:40   ` David S. Miller
2003-10-27  9:47 Mikael Pettersson
2003-10-27 10:58 Andries.Brouwer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).