diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2014-02-26 22:57:28 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2014-02-26 22:57:28 +0100 |
commit | da06687275d25430519365402e3be0800d612a68 (patch) | |
tree | ea88c95ca78c16be540f84e3cd56e08fcd435350 /hurd/translator/pfinet | |
parent | 2674414598f3a95a9b2c84c418b17a7d27a9e524 (diff) | |
parent | d216c51189addeaa03a0c92ac5d7708e004fa148 (diff) |
Merge remote-tracking branch 'darnassus--hurd-web/master'
Conflicts:
community/meetings.mdwn
contributing.mdwn
hurd/translator/pfinet/implementation.mdwn
Diffstat (limited to 'hurd/translator/pfinet')
-rw-r--r-- | hurd/translator/pfinet/implementation.mdwn | 147 |
1 files changed, 0 insertions, 147 deletions
diff --git a/hurd/translator/pfinet/implementation.mdwn b/hurd/translator/pfinet/implementation.mdwn index 7b2f07aa..31432788 100644 --- a/hurd/translator/pfinet/implementation.mdwn +++ b/hurd/translator/pfinet/implementation.mdwn @@ -27,153 +27,6 @@ implementation. <youpi> oh <braunr> http://jl-icase.home.comcast.net/~jl-icase/LinuxTCP2.html -## IRC, freenode, #hurd, 2013-09-03 - -In context of the item on [[/contributing]]. - - <rekado> About this task: "Make pfinet OK with the ethernet device going - away." --- how can I test this? How can I remove the ethernet device? - <pinotree> settrans on the ethernet device, handled by the netdde - translator - <pinotree> that is, make it go away (settrans -fg) - <rekado> Ah, I see. - <rekado> Thanks - <pinotree> check its status before with showtrans - <pinotree> then, after having made it go away, set it again - <rekado> I don't think I'm doing this right... After `settrans -fg - /dev/eth0` I should not be able to access the network anymore, but it - still works. - <rekado> How can I figure out which of the four network devices is actually - used? - <braunr> rekado: the file system is used to open files, i.e. access - services - <braunr> it's not used to revoke access - <braunr> once pfinet has obtained a port to the network device, it keeps it - <rekado> oh, yes, of course. Sorry, this is all very - [1;5C[1;5C[1;5C[1;5Cnew to me. - <rekado> I'm not sure what the problem is that this task describes. In - what way is pfinet "not OK" with the ethernet device going away? - <braunr> rekado: the idea is to make pfinet able to cope with a driver - crash - <rekado> Can I trigger a driver crash for test purposes? (Or do I have to - build a purposefully broken driver first?) - <braunr> use kill - <rekado> Oh, good. - <braunr> iirc, netdde doesn't restart correctly :x - <braunr> you'll probably have to fix it a bit - <braunr> i guess there is some persistent state that prevents it from - reinitializing correctly - <rekado> okay - <rekado> I may need one more pointer: where can I find the netdde code? - Grep'ing around I only see it only mentioned as an argument to - /hurd/devnode; also: should I work in some incubator branch or directly - in the hurd repo? - <braunr> rekado: incubator branch - <rekado> Okay. Thank you for your patience. I'll play with this in the - next few days. - <braunr> enjoy - <rekado> :) - - -### IRC, freenode, #hurd, 2013-09-05 - - <rekado> When I kill the /hurd/netdde process I can no longer access the - network (as expected); - <rekado> To restore connectivity I run "settrans -g eth0 /hurd/devnode -M - /dev/netdde eth0" from the /dev directory. - <rekado> When I access the network again everything is fine. (I do see a - message telling me "irq handler 11: release an dead delivery port" - <rekado> ) - <rekado> Is it the goal to avoid having to run settrans again to run netdde - after it crashes or is killed? - <youpi> you don't need to run settrans again - <youpi> that should get triggered automatically - <rekado> Hmm, after killing netdde I get "Resource lost" when using wget. - <rekado> It doesn't seem to be restarted automatically. - <youpi> try again - <youpi> the first wget makes pfinet try to use netdde and fail, thus crash - <youpi> the second wil respawn pfinet - <youpi> ideally pfinet shouldn't die, that's a TODO mentioned in the - "contributing page" - <rekado> Ah, so that's what should be prevented. - <youpi> it's just a matter of making pfinet be fine with errors from the - eth translator, and simply reopen it instead of dying - <rekado> That's the thing I've been trying to figure out. - <rekado> when I run wget a second (or third) time I get a different error; - "Name or service not known." - <rekado> It's only okay again when I use settrans - <youpi> maybe the devnode translator also needs some fixing - <youpi> it's odd that I don't have the issue though - <rekado> I'm using the qemu image, updated just yesterday. - <youpi> same here - <youpi> anyway, now you know where to put your hands :) - <rekado> yes, thanks a lot. - - -### IRC, freenode, #hurd, 2013-09-07 - - <rekado> in pfinet/ethernet.c:ethernet_open there's an assertion: - edev->ether_port == MACH_PORT_NULL - <rekado> This is violated when netdde was killed and the device is - reopened. - <rekado> I'm not sure what should be done: destroy the port before - reopening or drop the assertion? - <rekado> If I drop the assertion, Mach seems to handle this just fine. - <rekado> Says "irq handler 11: release an [sic] dead delivery port" and - then carries on without problems. - <rekado> Is this a warning or an error, or can this be ignored? - <rekado> (or none of the above?) - - -### IRC, freenode, #hurd, 2013-09-08 - - <rekado> I have a simple patch for pfinet that lets it recover from an - error in ethernet_xmit when /hurd/netdde and /hurd/devnode have been - killed. - <rekado> It doesn't work, though, when only netdde has been killed. - <rekado> With devnode still around device_open fails with "(ipc/send) - invalid destination port" - <rekado> I don't know where device_open is defined and why this error is - returned. - <rekado> I guess the error refers to the "master_device" port returned by - file_name_lookup() in ethernet_open() - <rekado> Why would file_name_lookup() return an invalid port when netdde is - dead but devnode is still running? - <braunr> rekado: maybe because devnode needs to perform a fresh lookup as - well - - -### IRC, freenode, #hurd, 2013-09-09 - - <rekado> braunr: re devnode: devnode only performs a single lookup in - parse_opt(), i.e. at start-up. - <rekado> I'll try to understand devnode enough to patch it. - <braunr> rekado: that's the problem - <braunr> it should perform a lookup every time it's opened - -[[!message-id "1378730237-8091-1-git-send-email-rekado@elephly.net"]], -[[!message-id "1378731824-8928-1-git-send-email-rekado@elephly.net"]]. - - <rekado> I submitted two patches to the mailing list. I've tested them on - Debian GNU/Hurd but based them on the incubator/dde branch. - <teythoon> rekado: awesome, reliability fixes are very much welcome - - -### IRC, freenode, #hurd, 2013-09-18 - - <rekado> youpi: my apologies for the delay in getting back to you with - improvements to my pfinet/devnode patches. Been very busy. - <braunr> rekado: development pace on the hurd has always been slow, no need - to apologize - - -### IRC, freenode, #hurd, 2014-02-12 - - <braunr> youpi: btw, the patch you finally decided to write yourself making - pfinet continue on driver failure is as expected quite handy :) - <youpi> :) - - ## MAC Addresses [[!tag open_issue_hurd]] |