Hi,
Finally, rc1.
Several networking fixes, net drivers fixes, devfs root boot option fixed,
and more.
Please stress test it.
Summary of changes from v2.4.20-pre11 to v2.4.20-rc1
============================================
<[email protected]>:
o 3ware driver update
<[email protected]>:
o The following patch adds support for ethtool to the ewrk3 driver. It is against 2.5-BK but should apply to any recent 2.5 and 2.4 as well. In addition to adding ethtool support, it also removes the cli/sti fixup attribution from the changelog since that didn't actually go in yet and fixes a small style issue I introduced in the multi-card support patch.
o This patch adds some locking fixups to the ewrk3 ioctl routine. None of these are critical since the ioctls AFAIK are used only by the EEPROM config utility.
o Last ewrk3 for now. Updates the changelog to cover previous patches, bumps the revision number, and replaces the horrific EthwrkSignature function with something (slightly) less horrific.
<[email protected]>:
o Add missing part of DMI update
<[email protected]>:
o Change David Hinds email address
o axnet_cs update
o nmclan_cs update: fixed cut-and-paste bug in ethtool ioctl handler
o pcnet_cs update
<[email protected]>:
o [TCP]: In TCP_LISTEN state, ignore SYNs with RST set
<[email protected]>:
o e1000 1/11
o e1000 2/11
o e1000 3/11
o e1000 4/11
o e1000 5/11
o e1000 6/11
o e1000 7/11
o e1000 8/11
o e1000 9/11
o e1000 10/11
o e1000 11/11
<[email protected]>:
o Remove cli/sti from ewrk3 net driver
o Fix tulip net driver multi-port board irq assignment
<[email protected]>:
o Fix compile problems with local APIC enabled
<[email protected]>:
o Add PCI id to tulip net driver
<[email protected]>:
o PPC32: Minor fix in parsing the BI_CMD_LINE bi_record
<[email protected]>:
o Add [davem]checkout:none
o Fix pSeries Hypervisor console Config.in entry
o Remove debugging printk in ide code
o Changed EXTRAVERSION to -rc1
<[email protected]>:
o [IPV6]: Fix bugs in PMTU handling
<[email protected]>:
o PPC32: Allow the IBM Spruce board to be compiled with gcc-3.x
<[email protected]>:
o Fix NFS IRIX compatibility braindamage
<[email protected]>:
o JFS: Add missing byte-swapping macros in xattr.c
<[email protected]>:
o drivers/net/eepro100.c: simplify wait_for_cmd_done(), better errors
o drivers/net/eepro100.c: only set priv->last_rx_time if we did work
o drivers/net/eepro100.c: mask the interrupt and do a small delay on close()
<[email protected]>:
o drivers/net/eepro100.c
o drivers/net/mii.c: only call netif_carrier_{on,off} if there is a state change
o drivers/net/eepro100.c
o drivers/net/natsemi.c: init msg_enable in proper way
o drivers/net/eepro100.c: compile bugs
o drivers/net/eepro100.c: eliminate speedo_intrmask
o drivers/net/eepro100.c: cleanup messages that pop up since netif_msg_xxx change
o drivers/net/eepro100.c: set the PHY ID correctly
o drivers/net/mii.c: fix flipped logic
o drivers/net/eepro100.c: set phy_id_mask and reg_num_mask in mii_if
Alan Cox <[email protected]>:
o dmi fixes from -ac
o Update sisfb headers
o del_timer_sync fixes for fmvj18x_cs net driver
Alexander Viro <[email protected]>:
o Fix devfs root boot option problem
Christoph Hellwig <[email protected]>:
o Fix bug in /proc/partitions handling code
David S. Miller <[email protected]>:
o arch/sparc64/kernel/pci_schizo.c: Enable error interrupts in correct PBM
o [SPARC]: Set highmem_io in ESP and QLOGICPTI scsi drivers
o arch/sparc64/defconfig: Update
o [SPARC]: Fix typo in EBUS/QLOGICPTI highmem_io changes
o arch/sparc64/mm/init.c: Initialize {min,max}_low_pfn properly
o arch/sparc64/mm/init.c: Set max_pfn too
o [ESP/QLOGICPTI]: Only set highmem_io on sparc64
o arch/sparc64/kernel/ioctl32.c: Block ioctl handling fix
o [SPARC64]: On broken cheetah, enable p-cache around large copies
o [sparc64/ppc64/x86_64]: Fix socket fd leak in route ioctl32 translation
o [SPARC64]: Disable old cheetah pcache optimization
o arch/sparc64/kernel/ioctl32.c: Handle HDIO_GETGEO_BIG{,_RAW}
o [IPV4]: When advmss of route is zero, report it as zero not 40
David Woodhouse <[email protected]>:
o JFFS2 / shared-zlib cleanup
Geert Uytterhoeven <[email protected]>:
o Zorro ID update
Hugh Dickins <[email protected]>:
o shmem missing cache flush
Ivan Kokshaysky <[email protected]>:
o alpha compile fix
Jens Axboe <[email protected]>:
o sr wrong return value
Kent Yoder <[email protected]>:
o Add link status checking to pcnet32 net driver
[email protected] <[email protected]>:
o Fix reordering of onboard PDC20265
Paul Mackerras <[email protected]>:
o PPC32: Fix the compile for POWER3, we had an undefined variable
Scott Feldman <[email protected]>:
o e100 1/5
o e100 2/5
o e100 3/5
o e100 4/5
o e100 5/5
Tom Callaway <[email protected]>:
o arch/sparc64/solaris/misc.c: Add MODULE_LICENSE
Tom Rini <[email protected]>:
o PPC32: Compile ppc_generic_ide_fix_driveid if CONFIG_USB_STORAGE is not disabled. This allows the USB Storage drivers which call ide_fix_driveid to be compiled on PPC32.
o PPC32: On CONFIG_ALL_PPC, always have pmac_nvram around, as this cleans up the code nicely in some places and allows the PPC-specific nvram driver to be a module.
Tomas Szepe <[email protected]>:
o [SPARC]: Move BTFIXUP-able code from inlined routines to the main kernel image
Trond Myklebust <[email protected]>:
o Remove unbalanced kunmap() in NFS readdir code
> Hi,
>
> Finally, rc1.
>
> Several networking fixes, net drivers fixes, devfs root boot option fixed,
> and more.
>
> Please stress test it.
>
There is always a compile error with the sis_fb and the drm.
i'm compiling the 2.4.20-rc1 without this option, and without this option
i'm sure that my kernel will be compiled.
best regards,
Stephane Wirtel
--
Stephane Wirtel <[email protected]>
GPG ID : 1024D/C9C16DA7 | 5331 0B5B 21F0 0363 EACD B73E 3D11 E5BC C9C1 6DA7
On Tue, 29 Oct 2002, Marcelo Tosatti wrote:
> Hi,
Hi Marcelo,
> Finally, rc1.
>...
> Please stress test it.
>...
the following patch is still needed to fix a .text.exit error:
--- linux-2.4.19-full-nohotplug/drivers/scsi/ips.c.old 2002-10-04 18:49:10.000000000 +0200
+++ linux-2.4.19-full-nohotplug/drivers/scsi/ips.c 2002-10-04 18:50:02.000000000 +0200
@@ -305,21 +305,21 @@
name: ips_hot_plug_name,
id_table: ips_pci_table,
probe: ips_insert_device,
- remove: ips_remove_device,
+ remove: __devexit_p(ips_remove_device),
};
struct pci_driver ips_pci_driver_5i = {
name: ips_hot_plug_name,
id_table: ips_pci_table_5i,
probe: ips_insert_device,
- remove: ips_remove_device,
+ remove: __devexit_p(ips_remove_device),
};
struct pci_driver ips_pci_driver_i960 = {
name: ips_hot_plug_name,
id_table: ips_pci_table_i960,
probe: ips_insert_device,
- remove: ips_remove_device,
+ remove: __devexit_p(ips_remove_device),
};
#endif
Please apply
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
Marcelo Tosatti wrote:
> Hi,
>
> Finally, rc1.
> [snipped]
>
> Please stress test it.
>
My system comes up with a blank console after hardware suspend and resume.
The cursor is still visible, but no text is there. Switching to another
console and back fixes it. Vesafb is enabled with vga=791.
Hardware is a Toshiba Satellite 4100XCDT notebook with Trident Cyber9525DVD
graphics chipset, but this also can be reproduced with Dell notebooks.
I just verified the problem exists still with 2.4.20-rc1.
A binary search turned up 2.4.18-pre7 as the kernel which broke,
specifically the changes made to apm.c back then.
Relevant part of .config:
CONFIG_PM=y
# CONFIG_ACPI is not set
CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_CPU_IDLE=y
CONFIG_APM_DISPLAY_BLANK=y
# CONFIG_APM_RTC_IS_GMT is not set
CONFIG_APM_ALLOW_INTS=y
# CONFIG_APM_REAL_MODE_POWER_OFF is not set
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_VGA_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_FB=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FB_CYBER2000=m
CONFIG_FB_VESA=y
CONFIG_FB_VGA16=m
CONFIG_VIDEO_SELECT=y
CONFIG_FB_TRIDENT=m
CONFIG_FBCON_ADVANCED=y
CONFIG_FBCON_CFB8=y
CONFIG_FBCON_CFB16=y
CONFIG_FBCON_CFB24=y
CONFIG_FBCON_CFB32=y
CONFIG_FBCON_VGA_PLANES=m
CONFIG_FBCON_VGA=m
CONFIG_FBCON_HGA=m
CONFIG_FBCON_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
/sbin/lsmod
Module Size Used by Not tainted
tulip 38016 1
ds 6368 2
yenta_socket 8704 2
pcmcia_core 31872 0 [ds yenta_socket]
nls_iso8859-1 2880 1 (autoclean)
nls_cp437 4384 1 (autoclean)
vfat 9244 1 (autoclean)
fat 28888 0 (autoclean) [vfat]
relevant part of dmesg:
apm: BIOS version 1.2 Flags 0x02 (Driver version 1.16)
Starting kswapd
VFS: Diskquotas version dquot_6.4.0 initialized
vesafb: framebuffer at 0xff800000, mapped to 0xcc80d000, size 2560k
vesafb: mode is 1024x768x16, linelength=2048, pages=0
vesafb: protected mode interface info at c000:6d44
vesafb: scrolling: redraw
vesafb: directcolor: size=0:5:6:5, shift=0:11:5:0
Console: switching to colour frame buffer device 128x48
fb0: VESA VGA frame buffer device
lspci -v
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge
(AGP disabled) (rev 03)
Subsystem: Toshiba America Info Systems: Unknown device 0001
Flags: bus master, medium devsel, latency 64
Memory at e0000000 (32-bit, prefetchable) [size=256M]
00:02.0 CardBus bridge: Toshiba America Info Systems ToPIC97 (rev 05)
Subsystem: Toshiba America Info Systems: Unknown device 0001
Flags: bus master, slow devsel, latency 0, IRQ 11
Memory at 10000000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=00, secondary=14, subordinate=14, sec-latency=0
Memory window 0: 10400000-107ff000 (prefetchable)
Memory window 1: 10800000-10bff000
I/O window 0: 00004000-000040ff
I/O window 1: 00004400-000044ff
16-bit legacy interface ports at 0001
00:02.1 CardBus bridge: Toshiba America Info Systems ToPIC97 (rev 05)
Subsystem: Toshiba America Info Systems: Unknown device 0001
Flags: bus master, slow devsel, latency 0, IRQ 11
Memory at 10001000 (32-bit, non-prefetchable) [size=4K]
Bus: primary=00, secondary=15, subordinate=15, sec-latency=0
Memory window 0: 10c00000-10fff000 (prefetchable)
Memory window 1: 11000000-113ff000
I/O window 0: 00004800-000048ff
I/O window 1: 00004c00-00004cff
16-bit legacy interface ports at 0001
00:04.0 VGA compatible controller: Trident Microsystems Cyber 9525 (rev 49)
(prog-if 00 [VGA])
Subsystem: Toshiba America Info Systems: Unknown device 0001
Flags: bus master, 66Mhz, medium devsel, latency 8, IRQ 11
Memory at ff800000 (32-bit, non-prefetchable) [size=4M]
Memory at ff7e0000 (32-bit, non-prefetchable) [size=128K]
Memory at ff000000 (32-bit, non-prefetchable) [size=4M]
Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: [80] AGP version 1.0
Capabilities: [90] Power Management version 1
00:05.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
Flags: bus master, medium devsel, latency 0
00:05.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if
80 [Master])
Flags: bus master, medium devsel, latency 64
I/O ports at 1000 [size=16]
00:05.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
(prog-if 00 [UHCI])
Flags: bus master, medium devsel, latency 64, IRQ 11
I/O ports at ffe0 [size=32]
00:05.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
Flags: medium devsel, IRQ 9
00:07.0 Communication controller: Lucent Microelectronics 56k WinModem (rev 01)
Subsystem: Toshiba America Info Systems Internal V.90 Modem
Flags: bus master, medium devsel, latency 0, IRQ 3
Memory at ffefff00 (32-bit, non-prefetchable) [size=256]
I/O ports at 02f8 [size=8]
I/O ports at 1c00 [size=256]
Capabilities: [f8] Power Management version 2
00:0a.0 Communication controller: Toshiba America Info Systems FIR Port (rev 23)
Subsystem: Toshiba America Info Systems: Unknown device 0001
Flags: bus master, slow devsel, latency 64, IRQ 11
I/O ports at ff80 [size=32]
00:0c.0 Multimedia audio controller: ESS Technology ES1978 Maestro 2E (rev 10)
Subsystem: Toshiba America Info Systems ES1978 Maestro-2E Audiodrive
Flags: bus master, medium devsel, latency 64, IRQ 11
I/O ports at fc00 [size=256]
Capabilities: [c0] Power Management version 2
15:00.0 Ethernet controller: Abocom Systems Inc: Unknown device ab02 (rev 11)
Subsystem: Abocom Systems Inc: Unknown device ab02
Flags: bus master, medium devsel, latency 64, IRQ 11
I/O ports at 4800 [size=256]
Memory at 11000000 (32-bit, non-prefetchable) [size=1K]
Expansion ROM at 10c00000 [size=128K]
Capabilities: [c0] Power Management version 2
If you need any other info, please tell me.
Thanks for your help
On Sat, 2 Nov 2002, Carl-Daniel Hailfinger wrote:
> Marcelo Tosatti wrote:
> > Hi,
> >
> > Finally, rc1.
> > [snipped]
> >
> > Please stress test it.
> >
>
> My system comes up with a blank console after hardware suspend and resume.
> The cursor is still visible, but no text is there. Switching to another
> console and back fixes it. Vesafb is enabled with vga=791.
> Hardware is a Toshiba Satellite 4100XCDT notebook with Trident Cyber9525DVD
> graphics chipset, but this also can be reproduced with Dell notebooks.
>
> I just verified the problem exists still with 2.4.20-rc1.
> A binary search turned up 2.4.18-pre7 as the kernel which broke,
> specifically the changes made to apm.c back then.
Have you tried to revert 2.4.18-pre7's changes to apm.c to make sure it is
the cause?>
Stephen, can you please take a look at this for me?
diff -Naur -X /home/marcelo/lib/dontdiff linux.orig/drivers/video/fbcon.c linux/drivers/video/fbcon.c
--- linux.orig/drivers/video/fbcon.c Thu Jan 10 20:17:41 2002
+++ linux/drivers/video/fbcon.c Wed Dec 26 16:50:52 2001
@@ -75,6 +75,7 @@
#include <linux/selection.h>
#include <linux/smp.h>
#include <linux/init.h>
+#include <linux/pm.h>
#include <asm/irq.h>
#include <asm/system.h>
@@ -137,6 +138,12 @@
static void fbcon_free_font(struct display *);
static int fbcon_set_origin(struct vc_data *);
+#ifdef CONFIG_PM
+static int pm_fbcon_request(struct pm_dev *dev, pm_request_t rqst, void *data);
+static struct pm_dev *pm_fbcon;
+static int fbcon_sleeping;
+#endif
+
/*
* Emmanuel: fbcon will now use a hardware cursor if the
* low-level driver provides a non-NULL dispsw->cursor pointer,
@@ -233,6 +240,7 @@
static struct timer_list cursor_timer = {
function: cursor_timer_handler
};
+static int use_timer_cursor;
static void cursor_timer_handler(unsigned long dev_addr)
{
@@ -457,11 +465,16 @@
#endif
if (irqres) {
+ use_timer_cursor = 1;
cursor_blink_rate = DEFAULT_CURSOR_BLINK_RATE;
cursor_timer.expires = jiffies+HZ/50;
add_timer(&cursor_timer);
}
+#ifdef CONFIG_PM
+ pm_fbcon = pm_register(PM_SYS_DEV, PM_SYS_VGA, pm_fbcon_request);
+#endif
+
return display_desc;
}
@@ -1558,6 +1571,10 @@
if (blank < 0) /* Entering graphics mode */
return 0;
+#ifdef CONFIG_PM
+ if (fbcon_sleeping)
+ return 0;
+#endif /* CONFIG_PM */
fbcon_cursor(p->conp, blank ? CM_ERASE : CM_DRAW);
@@ -2446,6 +2463,39 @@
return done ? (LOGO_H + fontheight(p) - 1) / fontheight(p) : 0 ;
}
+
+#ifdef CONFIG_PM
+/* console.c doesn't do enough here */
+static int
+pm_fbcon_request(struct pm_dev *dev, pm_request_t rqst, void *data)
+{
+ unsigned long flags;
+
+ switch (rqst)
+ {
+ case PM_RESUME:
+ acquire_console_sem();
+ fbcon_sleeping = 0;
+ if (use_timer_cursor) {
+ cursor_timer.expires = jiffies+HZ/50;
+ add_timer(&cursor_timer);
+ }
+ release_console_sem();
+ break;
+ case PM_SUSPEND:
+ acquire_console_sem();
+ save_flags(flags);
+ cli();
+ if (use_timer_cursor)
+ del_timer(&cursor_timer);
+ fbcon_sleeping = 1;
+ restore_flags(flags);
+ release_console_sem();
+ break;
+ }
+ return 0;
+}
+#endif /* CONFIG_PM */
/*
* The console `switch' structure for the frame buffer based console
Carl-Daniel Hailfinger wrote:
> [CC: linux-fbdev-devel to find out what was wrong with the patch]
> Marcelo Tosatti wrote:
>> On Sat, 2 Nov 2002, Carl-Daniel Hailfinger wrote:
>>> Marcelo Tosatti wrote:
>>>
>>>> Hi,
>>>>
>>>> Finally, rc1.
>>>> [snipped]
>>>>
>>>> Please stress test it.
>>>>
>>>
>>> My system comes up with a blank console after hardware suspend and
>>> resume.
>>> The cursor is still visible, but no text is there. Switching to another
>>> console and back fixes it. Vesafb is enabled with vga=791.
>>> Hardware is a Toshiba Satellite 4100XCDT notebook with Trident
>>> Cyber9525DVD
>>> graphics chipset, but this also can be reproduced with Dell notebooks.
>>>
>>> I just verified the problem exists still with 2.4.20-rc1.
>>> A binary search turned up 2.4.18-pre7 as the kernel which broke,
>>> specifically the changes made to apm.c back then.
>>
>>
>>
>> Have you tried to revert 2.4.18-pre7's changes to apm.c to make sure
>> it is
>> the cause?>
>
>
> I tried it and found out that my results were incorrect. The problem was
> introduced in 2.4.18-pre1 by the changes to drivers/video/fbcon.c
>
> Reverting the attached patch fixes my problem. However, I am not exactly
> sure why a patch intended to fix a PM problem introduced another one.
I managed to trim down the offending patch further. Reverting the new
attached patch is enough to fix my problem. Can someone of the framebuffer
experts please comment on this one?
Regards
Carl-Daniel
On Fri, 2002-11-08 at 13:22, Carl-Daniel Hailfinger wrote:
> I managed to trim down the offending patch further. Reverting the new
> attached patch is enough to fix my problem. Can someone of the framebuffer
> experts please comment on this one?
Ok, I'm the one to blame for that patch.
It was intended to fix some problems where the console subsystem
would call fbcon_blank after the fbdev HW was put to suspend, thus
crashing the system.
This should really be fixed in the low level fb drivers to ignore
blanking when they are asleep though. This is a kind of hack as 2.4
lacks a proper model for ordering power management requests
Marcelo, feel free to delete those 4 lines (but not the whole patch),
just the 4 lines in fbcon_blank, I'll make sure the various drivers
are made safe.
Ben.