| From | Subject | Date |
|---|---|---|
| Andrew Doran | Re: audio power code tsleep()s from interrupt context
The assertion is there because in most cases tsleep will mean a mid to long
term wait. It could be make OK to use but the assertion seems more valuable.
Andrew
| Jan 18, 3:18 pm 2008 |
| Joerg Sonnenberger | Re: audio power code tsleep()s from interrupt context
Huh? The power saving is done by suspending the device if it is not used
for a while. It is not mixed with suspend/resume in any other way.
I am not sure if the assertion in that form is still warranted, Andrew
should be able to comment on that. But I guess for drivers like USB we
really have to do the idle processing from a kernel thread.
Joerg
| Jan 18, 12:13 pm 2008 |
| Matthias Drochner | Re: audio power code tsleep()s from interrupt context
However you turn it - you initiate a USB transaction and
you want to wait for its result. This can take a while,
so you have to wait. Whether USB uses an own thread internally
or not changes only who is going to wake you up. In any case
Whai I say "mixed" I'm talking about semantics and terms, and
implementation. I'm not assuming that they happen at the same
time and that this might cause problems.
The suspend/resume functions as done now are primarily to get
the machine to sleep -S3 in ...
| Jan 18, 1:36 pm 2008 |
| Matthias Drochner | audio power code tsleep()s from interrupt context
Hi -
the code which tries to power down audio devices if not
used for some seconds causes a panic for me - see below.
A general note:
While this is a worthwhile goal to save power I don't
think this should be mixed with the suspend/resume code
the way it is done now -- the suspend/resume code has
strict technical requirements, as getting PCI devices
to D3, while power-saving code should be opportunistic
and user configurable.
best regards
Matthias
panic: kernel diagnostic assertion ...
| Jan 18, 11:56 am 2008 |
| David Young | shutdown hooks at panic (was Re: CVS commit: src/sys/kern)
[I'm copying this from source-changes because I believe the discussion
deserves a wider audience, and a better subject heading. :-)]
Do the legacy shutdown hooks hang, or do the PMF suspend routines hang?
I thought that it was the latter. That is why I suggest the more
conservative change: skip PMF suspension if there was a panic, but let
the shutdown hooks run.
Will you give examples of the drivers that do not implement polling
correctly, so that people can fix them? You have also ...
| Jan 18, 10:39 am 2008 |
| Joerg Sonnenberger | Re: shutdown hooks at panic (was Re: CVS commit: src/sys/kern)
The PMF functions hang. But they do the same things as the original
shutdown calls, so I am not sure why this issue didn't appear earlier.
I would like to see cpu_reboot be split into three parts. The first part
is optional and allows MD to override the desired action. Some platforms
have special rules for rebooting, but many just honour what the user
requested. The second part can be MI and implements the sync,
coredumping and calling the shutdown handlers. The third part is the ...
| Jan 18, 12:09 pm 2008 |
| Elad Efrat | Socket options KPI
Hi,
I have a patch to make a large portion of the network code use a new
"struct sockopt" (inspired by similar work done in FreeBSD, with input
from dyoung@ and yamt@) instead of passing socket options in mbufs.
The work is incomplete - although I think the majority of the code was
covered. I've been running it here for about a month or so, but I'm
putting it up for public review as it's unlikely I'll be able to test
all of the code paths affected by these changes, specifically in network ...
| Jan 18, 10:08 am 2008 |
| matthew green | re: Socket options KPI
> so_setsockopt:
> Shouldn't valsize be the normal size_t? Does socklen_t really make sense
> here?
I vaguely remember there was a reason for this socklen_t... maybe the
original FreeBSD changes. Anyway, I'm thinking it should be unsigned
int, actually, to fit the len parameter to sys_setsockopt() and
sys_getsockopt(), no?
don't getsockopt/setsockopt take socklen_t? oh ouch. their
manual pages claim socklen_t but their implementations use
unsigned int. ...
| Jan 18, 4:51 pm 2008 |
| matthew green | re: Socket options KPI
hi elad,
could you explain what the purpose/benefit of this is?
thanks,
.mrg.
| Jan 18, 12:06 pm 2008 |
| Joerg Sonnenberger | Re: Socket options KPI
The use of mbufs for socket options is a micro optimisation from the
time when no efficient memory allocator was present.
Joerg
| Jan 18, 3:21 pm 2008 |
| Joerg Sonnenberger | Re: Socket options KPI
so_setsockopt:
Shouldn't valsize be the normal size_t? Does socklen_t really make sense
here? The val pointer should be const.
sockopt_ensure_writeable --> I don't like the name.
If you can now also push the socket options down into ipv4/ipv6 and the
patch can go without the sockopt_setmbuf/getmbuf, that would be very
nice :-)
Without a full review, this looks like a huge improvement.
Joerg
| Jan 18, 12:26 pm 2008 |
| Elad Efrat | Re: Socket options KPI
I vaguely remember there was a reason for this socklen_t... maybe the
original FreeBSD changes. Anyway, I'm thinking it should be unsigned
int, actually, to fit the len parameter to sys_setsockopt() and
I don't mind the naming. Bring up any name you'd like, and if people
Yes. Unfortunately, some code is *very* hairy about that kinda stuff so
Great to hear! :)
Thanks,
-e.
| Jan 18, 3:12 pm 2008 |
| Elad Efrat | Re: Socket options KPI
Instead of passing "struct mbuf" for everything (socket options, various
socket addresses, etc.) I'd like to -- like done in FreeBSD over 10
years ago -- use (the) proper types for everything.
-e.
| Jan 18, 3:04 pm 2008 |
| John Klos | Re: CVS commit: src/sys/dev/pci
I was thinking about that, too. I'm at Macworld today and tomorrow; I'll
do that this weekend.
Thanks,
John Klos
| Jan 17, 9:59 pm 2008 |
| David Laight | Re: Kernel modules
One problem here is that the compat code probably doesn't want to call
the sys_foo() function itself, but rather then next function down that
is executed once all the parameters are in kernel space.
I think that means that if sys_foo() is in an LKM, then compat_bar_sys_foo()
must also be in an LKM. Then the LKM dependecies can be used to ensure
all the required functionality is present.
David
--
David Laight: david@l8s.co.uk
| Jan 18, 11:11 am 2008 |
| Adam Hamsik | Re: Kernel modules
Hi, Andrew
Some time ago I have changed ddb to accept new command tables from
LKM. I have added two external visible functions [1], db_register_tbl,
db_unregister_tbl. With this interface LKM can add/remove functions to
ddb interface. I can rename them to something more standard ddb_attach/
ddb_detach + I can add test ddb command table to example module, too.
If it is needed. There is no locking for now because I thought that it
is not needed is this still true ...
| Jan 18, 2:30 pm 2008 |
| Herb Peyerl | Re: uvm page freelist problem
Found the problem, on my target. It was not a uvm problem at all, but
some other unrelated issue that happened to scribble on the freelist.
| Jan 18, 1:16 pm 2008 |
| previous day | today | next day |
|---|---|---|
| January 17, 2008 | January 18, 2008 | January 19, 2008 |
