NFS mounted rootfs possible via PCMCIA NIC ?
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello list,
I am trying to configure a notebook with a PCMCIA NIC to boot over network. (kernel 2.4.20)
In order to accomplish this I passed over the neccessary configuration paramters through the boot loader (ip, root, nfsroot)
The problem is: When the kernel is booting it is trying to configure the Network interface, before it has been activated.
Thus my question is: Is it possible somehow to change the order by some configuration parameter ?!?
Thanks for answers in advance
- -Andreas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
iD4DBQE997P0hFLSFNIrGmsRAjMpAJitzpgKyTJDg6ubFy17u9GA+EZEAJ9kgBKv k7Euyw1aT6/6ORWhzPjZwg==
=AmIZ
-----END PGP SIGNATURE-----
Quoted 5 lines · Andreas Schaufler
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Hello list,
Quoted 7 lines
I am trying to configure a notebook with a PCMCIA NIC to boot over network. (kernel 2.4.20)
In order to accomplish this I passed over the neccessary configuration paramters through the boot loader (ip, root, nfsroot)The problem is: When the kernel is booting it is trying to configure the Network interface, before it has been activated.
PCMCIA relies in part on user space. You can do this, it involves building a large initrd with a dhcp client on it that sets up pcmcia, then nfs mounts stuff, then pivot_root()'s into it. Its not exactly trivial
...
Quoted 4 lines
PCMCIA relies in part on user space. You can do this, it involves building a large initrd with a dhcp client on it that sets up pcmcia, then nfs mounts stuff, then pivot_root()'s into it. Its not exactly trivial
Thanks for your reply. I get the basic idea from what you say. But what do you mean by pivot_root()'ing into it ?!?
I'll try Andrew Morton's suggestion first, because it sounds easier. If I can't get it running I'll try your suggestion.
regards
-Andreas
Followup to: <[email protected]> By author: Andreas Schaufler <[email protected]> In newsgroup: linux.dev.kernel
Quoted 10 lines
...
Quoted 4 lines
PCMCIA relies in part on user space. You can do this, it involves building a large initrd with a dhcp client on it that sets up pcmcia, then nfs mounts stuff, then pivot_root()'s into it. Its not exactly trivial
Thanks for your reply. I get the basic idea from what you say. But what do you mean by pivot_root()'ing into it ?!?
pivot_root() is a system call which flips the root directory around. See Documentation/initrd.txt.
-hpa
Signature · 3 lines
<[email protected]> at work, <[email protected]> in private! "Unix gives you enough rope to shoot yourself in the foot." http://www.zytor.com/~hpa/puzzle.txt <[email protected]>
Quoted 8 lines · Andreas Schaufler
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Hello list,
I am trying to configure a notebook with a PCMCIA NIC to boot over network. (kernel 2.4.20)
Nope. The kernel does the NFS thing before bringing up cardbus.
This patch worked, back in the 2.4.17 days. It also fixes some cardbus bugs. I don't immediately recall what they were.
drivers/pcmcia/Makefile | 3 + drivers/pcmcia/ds.c | 13 ++----- drivers/pcmcia/yenta.c | 85 ++++++++++++++++++++++-------------------------- init/main.c | 3 - 4 files changed, 45 insertions(+), 59 deletions(-)
drivers/pcmcia/ds.c renamed from drivers/pcmcia/ds.c~pcmcia-ip-autoconf +4 -9
@@ -968,14 +968,7 @@ int __init init_pcmcia_ds(void)return 0 ; } -#ifdef MODULE - -int __init init_module (void ) -{ -return init_pcmcia_ds (); -} - -void __exit cleanup_module(void) +void __exit cleanup_pcmcia_ds(void) {int i;#ifdef CONFIG_PROC_FS
@@ -990,4 +983,6 @@ void __exit cleanup_module(void)kfree (socket_table); } -#endif +module_init (init_pcmcia_ds); +module_exit (cleanup_pcmcia_ds); +
drivers/pcmcia/Makefile renamed from drivers/pcmcia/Makefile~pcmcia-ip-autoconf +2 -1
@@ -22,7 +22,7 @@ ifeq ($(CONFIG_CARDBUS),y) endif ifeq ($(CONFIG_PCMCIA),y) - obj-y := cistpl.o rsrc_mgr.o bulkmem.o ds.o cs.o + obj-y := cistpl.o rsrc_mgr.o bulkmem.o cs.o ifeq ($(CONFIG_CARDBUS),y) obj-y += cardbus.o yenta.o pci_socket.o endif
@@ -38,6 +38,7 @@ ifeq ($(CONFIG_PCMCIA),y) ifeq ($(CONFIG_HD64465_PCMCIA),y) obj-y += hd64465_ss.o endif + obj-y += ds.o else ifeq ($(CONFIG_PCMCIA),m) obj-m := pcmcia_core.o ds.o
drivers/pcmcia/yenta.c renamed from drivers/pcmcia/yenta.c~pcmcia-ip-autoconf +39 -46
129 lines not on this page · raw message
init/main.c renamed from init/main.c~pcmcia-ip-autoconf +0 -3
@@ -533,9 +533,6 @@ static void __init do_basic_setup(void)irda_proto_init ();irda_device_init ();/* Must be done after protocol initialization */ #endif -#ifdef CONFIG_PCMCIA -init_pcmcia_ds ();/* Do this last */ -#endif }extern void prepare_namespace (void );
_
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Quoted 9 lines
Quoted 4 lines
Hello list,
I am trying to configure a notebook with a PCMCIA NIC to boot over network. (kernel 2.4.20)
Nope. The kernel does the NFS thing before bringing up cardbus.
This patch worked, back in the 2.4.17 days. It also fixes some cardbus bugs. I don't immediately recall what they were.
I got the 2.4.17 sources and applied the patch. yenta.c and main.c could not be patched automatically, so I tried to apply it by hand line by line. Unfortunately when I boot a kernel compiled witch this modified sources I get an "Unable to handle kernel pagin request at virtual address 0000413d"
Maybe this patch is to be used on some Pre Version of 2.4.17 ?!?!
regards
- -Andreas
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
iD8DBQE9+MeFhFLSFNIrGmsRAg0HAJ0RBZ/WKDxvv8YXXTLbT7REnqoVowCcC8tL sGgZre0DIZOAdFVW6kn56rg=
=23D5
-----END PGP SIGNATURE-----
Quoted 14 lines · Andreas Schaufler
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Quoted 9 lines
Quoted 4 lines
Hello list,
I am trying to configure a notebook with a PCMCIA NIC to boot over network. (kernel 2.4.20)
Nope. The kernel does the NFS thing before bringing up cardbus.
This patch worked, back in the 2.4.17 days. It also fixes some cardbus bugs. I don't immediately recall what they were.
Quoted 7 lines
I got the 2.4.17 sources and applied the patch.
yenta.candmain.ccould not be patched automatically, so I tried to apply it by hand line by line. Unfortunately when I boot a kernel compiled witch this modified sources I get an "Unable to handle kernel pagin request at virtual address0000413d"Maybe this patch is to be used on some Pre Version of 2.4.17 ?!?!
Sorry, that patch was against 2.4.20. It was last tested in 2.4.17.
Am Donnerstag, 12. Dezember 2002 18:35 schrieb Andrew Morton:
...
Quoted 4 lines
Quoted 2 lines
Maybe this patch is to be used on some Pre Version of 2.4.17 ?!?!
Sorry, that patch was against 2.4.20. It was last tested in 2.4.17.
Ok, thank you very much. It did not patch automatically in 2.4.20 though. But after I applied it manually everything works fine.
Now I can use my old Notebook, which has a broken IDE Controller, again :-)
best regards from a happy Linux User
-Andreas