ERESTARTSYS question.

2001-04-05 Thread Jani Monoses


Hi,
although the comments in errno.h say that ERESTARTSYS should not be seen
by userland,many drivers seam to return it from their
file_operations.Should glibc convert this errno so that the user program
sees something meaningful?Because it does not.Is EINTR not a better errno 
to return from the drivers?

Thanks. 



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: ERESTARTSYS question.

2001-04-05 Thread Jani Monoses



On Thu, 5 Apr 2001, Bjorn Wesen wrote:

> 
> ERESTARTSYS is a part of the api between the driver and the
> signal-handling code in the kernel. It does not reach user-space (provided
> of course that it's used appropriately in the drivers :) 

As an example sound/via82cxxx_audio.c returns ERESTARTSYS from
via_dsp_open() .I suppose this _does_ reach userland right? 

> When a driver needs to wait, and get awoken by a signal (as opposed to
> what it's really waiting for) the driver should in most cases abort the
> system call so the signal handler can be run (like, you push ctrl-c while
> running somethinig that's stuck in a wait for an interrupt). The kernel
> uses the ERESTARTSYS as a "magic" value saying it's ok to restart the
> system call automagically after the signal handling is done. The actual
> return-code is switched to EINTR if the system call could not be
> restarted.
> 
> -Bjorn
> 

Thanks, and by the way the comments in arch/cris regarding the issue are
useful too ;)

Jani.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



PCI address space collision

2001-04-05 Thread Jani Monoses


Hi,
is this something to worry about ?

in dmesg:

PCI: Address space collision on region 9 of device VIA Technologies, Inc.
VT82C686 [Apollo Super ACPI] [8080:808f]

I know it might be unrelated with  ACPI being experimental but if the
kernel is compiled with ACPI instead of APM the machine (Presario 12XL300)
"cannot enter S5" when halting.
kernels 2.4.1 - 2.4.3
Thanks.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Rage Mobility P/M

2001-04-18 Thread Jani Monoses


Hi
does the atyfb or aty128fb  support this chip?
Device id of 4c4d.
Using 2.4.3-ac7.

Thanks
Jani.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: Rage Mobility P/M

2001-04-18 Thread Jani Monoses


Well I only use it with vesafb,but ywrap is doing strange stuff
(maybe the card misreports the amount of memory on it) and redraw
and ypan are slw... 

On 18 Apr 2001, Ben Pfaff wrote:

> Jani Monoses <[EMAIL PROTECTED]> writes:
> 
> > does the atyfb or aty128fb  support this chip?
> > Device id of 4c4d.
> > Using 2.4.3-ac7.
> 
> I have a Rage Mobility with the same device ID on my laptop
> (Compaq Armada M700) but haven't been able to get it working with
> framebuffer.  At any rate, atyfb is the proper one to use.  Let
> me know if you get it working, I'd like to use it too.
> -- 
> "How could this be a problem in a country 
>  where we have Intel and Microsoft?"
> --Al Gore on Y2K
> 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



[patch] docbook fix in /drivers/block/ll_rw_blk.c

2000-12-01 Thread Jani Monoses


Hi Linus,

 there is a warning in make docs and there is no documentation generated
for blk_init_queue because of another function declaration between the
comments and the definition .

This patch moves the declaration before the comments.

please apply . 


--- /usr/src/clean/linux-2.4/drivers/block/ll_rw_blk.c  Thu Nov 30 18:13:46 2000
+++ ll_rw_blk.c Fri Dec  1 14:23:50 2000
@@ -383,6 +383,8 @@
spin_lock_init(&q->request_lock);
 }
 
+static int __make_request(request_queue_t * q, int rw, struct buffer_head * bh);
+
 /**
  * blk_init_queue  - prepare a request queue for use with a block device
  * @q:The &request_queue_t to be initialised
@@ -416,7 +418,6 @@
  *blk_init_queue() must be paired with a blk_cleanup-queue() call
  *when the block device is deactivated (such as at module unload).
  **/
-static int __make_request(request_queue_t * q, int rw,  struct buffer_head * bh);
 void blk_init_queue(request_queue_t * q, request_fn_proc * rfn)
 {
INIT_LIST_HEAD(&q->queue_head);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



inline docs question

2000-12-11 Thread Jani Monoses


Hi,
which functions DON'T need inline documentation in the kernel?

Thanks,
Jani.   

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[minor patch] pci.h

2000-12-11 Thread Jani Monoses


Hi Martin
this patch makes computing of pci_resource_len a bit more
straightforward and hopefully still correct.Plus an aesthetic change in a
struct declaration :)

--- /usr/src/clean/linux/include/linux/pci.hMon Dec 11 16:49:19 2000
+++ pci.h   Mon Dec 11 17:54:24 2000
@@ -432,8 +432,7 @@
int (*write_dword)(struct pci_dev *, int where, u32 val);
 };
 
-struct pbus_set_ranges_data
-{
+struct pbus_set_ranges_data {
int found_vga;
unsigned long io_start, io_end;
unsigned long mem_start, mem_end;
@@ -636,9 +635,8 @@
 #define pci_resource_end(dev,bar) ((dev)->resource[(bar)].end)
 #define pci_resource_flags(dev,bar)   ((dev)->resource[(bar)].flags)
 #define pci_resource_len(dev,bar) \
-   ((pci_resource_start((dev),(bar)) == 0 &&   \
- pci_resource_end((dev),(bar)) ==  \
- pci_resource_start((dev),(bar))) ? 0 :\
+   (!(pci_resource_start((dev),(bar)) ||   \
+  pci_resource_end((dev),(bar)))  ? 0 :\
\
 (pci_resource_end((dev),(bar)) -   \
  pci_resource_start((dev),(bar)) + 1))


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: 2.4.0-test12 randomly hangs up

2000-12-13 Thread Jani Monoses


Mine too did this 15 minutes ago.Just moving the mouse around in X and
suddenly complete freeze.No response to ping either.Such a thing didn't 
happen for a long time to me.The only thing I've changed since test11 is
compiling fb+fbvesa in.







-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



pci_match_device question

2000-12-15 Thread Jani Monoses


Hi,
why is pci_match_device supposed to return a _const_ struct
pci_device_id?What are the implications of defining it this way?
Is it just a contract or the compiler/linker does smt special with it if
its const?

Sorry if the second part of the question is a bit OT.

Jani

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



inode.c inline doc fix

2000-12-16 Thread Jani Monoses


Hi Linus,

this adds (hopefully correct) documentation to the newly
intorduced flags parameter in mark_inode_dirty.


--- /usr/src/linux/fs/inode.c   Tue Dec 12 11:25:55 2000
+++ inode.c Sat Dec 16 14:38:25 2000
@@ -125,8 +125,9 @@
 /**
  * __mark_inode_dirty -internal function
  * @inode: inode to mark
- *
- * Mark an inode as dirty. Callers should use mark_inode_dirty.
+ * @flags: what kind of dirty (i.e. I_DIRTY_SYNC)
+ * Mark an inode as dirty. Callers should use mark_inode_dirty or
+ * mark_inode_dirty_sync.
  */
  
 void __mark_inode_dirty(struct inode *inode, int flags)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



mark_inode_dirty question

2000-12-16 Thread Jani Monoses


Hi Al,

I see that
( (inode->i_state & flags) != flags ) 

checked in __mark_inode_dirty as well as before it is called in
mark_inode_dirty and mark_inode_dirty_sync .Could the i_state be changed
during the call (on another CPU)?

Thanks 
Jani.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: mark_inode_dirty question

2000-12-16 Thread Jani Monoses



On Sat, 16 Dec 2000, Andrea Arcangeli wrote:

> On Sat, Dec 16, 2000 at 02:47:16PM +0200, Jani Monoses wrote:
> > mark_inode_dirty and mark_inode_dirty_sync .Could the i_state be changed
> > during the call (on another CPU)?
> 
> no because you're protected by the inode_lock.
> 
> Andrea
> 

Thanks but
I meant between the moment the call from mark_* is made and the lock is
taken.I suppose it can be changed thus the double check in both caller and
callee.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



kernel-doc minor fix

2000-12-16 Thread Jani Monoses


Hi 

inline docs are not generated for functions which return a 'const'
because this modifier is not checked for (only inline extern and static)
when verifying the function prototype.
This patch fixes it and hopefully doesn't break anything else(I am
Perl)

Jani.

--- /usr/src/linux/scripts/kernel-doc   Tue Dec 12 11:25:59 2000
+++ kernel-doc  Sat Dec 16 15:53:17 2000
@@ -664,10 +664,11 @@
 
 ##
 # takes a function prototype and spits out all the details
-# stored in the global arrays/hsahes.
+# stored in the global arrays/hashes.
 sub dump_function {
 my $prototype = shift @_;
 
+$prototype =~ s/^const+ //;
 $prototype =~ s/^static+ //;
 $prototype =~ s/^extern+ //;
 $prototype =~ s/^inline+ //;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[patch] docbook fix kmod.c

2000-12-16 Thread Jani Monoses


Hi,
kernel-api.tmpl references the exported functions of kmod.c but
there are none.This patch changes it to gather docs about the internal
functions instead and also adds a  so that jade doesn't complain
anymore about unfinished CHAPTER or something.

Jani.

--- /usr/src/linux/Documentation/DocBook/kernel-api.tmplMon Dec  4 12:12:12 
2000
+++ kernel-api.tmpl Sat Dec 16 17:00:11 2000
@@ -94,7 +94,9 @@
 
   
  Module Loading
-!Ekernel/kmod.c
+ Kernel module loader
+!Ikernel/kmod.c
+
   
 
   

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[patch] pci.c inline documentation

2000-12-16 Thread Jani Monoses


Hi Martin, all

this patch fixes some of the problems of the inline docs in pci.c
and adds docs to other 10 functions.
Could you comment on the comments :-) ?

Jani.

--- /usr/src/linux/drivers/pci/pci.c.ol Sat Dec 16 16:11:21 2000
+++ pci.c   Sat Dec 16 17:17:26 2000
@@ -40,10 +40,12 @@
 /**
  * pci_find_slot - locate PCI device from a given PCI slot
  * @bus: number of PCI bus on which desired PCI device resides
- * @devfn:  number of PCI slot in which desired PCI device resides
+ * @devfn: encodes number of PCI slot in which the desired PCI 
+ * device resides and the logical device number within that slot 
+ * in case of multi-function devices.
  *
- * Given a PCI bus and slot number, the desired PCI device is
- * located in system global list of PCI devices.  If the device
+ * Given a PCI bus and slot/function number, the desired PCI device 
+ * is located in system global list of PCI devices.  If the device
  * is found, a pointer to its data structure is returned.  If no 
  * device is found, %NULL is returned.
  */
@@ -59,7 +61,20 @@
return NULL;
 }
 
-
+/**
+ * pci_find_subsys - begin or continue searching for a PCI device by 
+vendor/subvendor/device/subdevice id
+ * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids
+ * @device: PCI device id to match, or %PCI_ANY_ID to match all vendor ids
+ * @ss_vendor: PCI subsystem vendor id to match, or %PCI_ANY_ID to match all vendor 
+ids
+ * @ss_device: PCI subsystem device id to match, or %PCI_ANY_ID to match all vendor 
+ids
+ * @from: Previous PCI device found in search, or %NULL for new search.
+ *
+ * Iterates through the list of known PCI devices.  If a PCI device is
+ * found with a matching @vendor, @device, @ss_vendor and @ss_device, a pointer to its
+ * device structure is returned.  Otherwise, %NULL is returned.
+ * A new search is initiated by passing %NULL to the @from argument.
+ * Otherwise if @from is not %NULL, searches continue from that point.
+ */
 struct pci_dev *
 pci_find_subsys(unsigned int vendor, unsigned int device,
unsigned int ss_vendor, unsigned int ss_device,
@@ -89,9 +104,8 @@
  * Iterates through the list of known PCI devices.  If a PCI device is
  * found with a matching @vendor and @device, a pointer to its device structure is
  * returned.  Otherwise, %NULL is returned.
- *
  * A new search is initiated by passing %NULL to the @from argument.
- * Otherwise if @from is not null, searches continue from that point.
+ * Otherwise if @from is not %NULL, searches continue from that point.
  */
 struct pci_dev *
 pci_find_device(unsigned int vendor, unsigned int device, const struct pci_dev *from)
@@ -108,9 +122,8 @@
  * Iterates through the list of known PCI devices.  If a PCI device is
  * found with a matching @class, a pointer to its device structure is
  * returned.  Otherwise, %NULL is returned.
- *
  * A new search is initiated by passing %NULL to the @from argument.
- * Otherwise if @from is not null, searches continue from that point.
+ * Otherwise if @from is not %NULL, searches continue from that point.
  */
 struct pci_dev *
 pci_find_class(unsigned int class, const struct pci_dev *from)
@@ -126,7 +139,28 @@
return NULL;
 }
 
-
+/**
+ * pci_find_capability - query for devices' capabilities 
+ * @dev: PCI device to query
+ * @cap: capability code
+ *
+ * Tell if a device supports a given PCI capability.
+ * Returns the address of the requested capability structure within the device's PCI 
+ * configuration space or 0 in case the device does not support it.
+ * Possible values for @flags:
+ *
+ *  %PCI_CAP_ID_PM   Power Management 
+ *
+ *  %PCI_CAP_ID_AGP  Accelerated Graphics Port 
+ *
+ *  %PCI_CAP_ID_VPD  Vital Product Data 
+ *
+ *  %PCI_CAP_ID_SLOTID   Slot Identification 
+ *
+ *  %PCI_CAP_ID_MSI  Message Signalled Interrupts
+ *
+ *  %PCI_CAP_ID_CHSWPCompactPCI HotSwap 
+ */
 int
 pci_find_capability(struct pci_dev *dev, int cap)
 {
@@ -281,6 +315,15 @@
 
 static LIST_HEAD(pci_drivers);
 
+/**
+ * pci_match_device - Tell if a PCI device structure has a matching PCI device id 
+structure
+ * @ids: array of PCI device id structures to search in
+ * @dev: the PCI device structure to match against
+ * 
+ * Used by a driver to check whether a PCI device present in the
+ * system is in its list of supported devices.Returns the matching
+ * pci_device_id structure or %NULL if there is no match.
+ */
 const struct pci_device_id *
 pci_match_device(const struct pci_device_id *ids, const struct pci_dev *dev)
 {
@@ -295,7 +338,7 @@
}
return NULL;
 }
-
+ 
 static int
 pci_announce_device(struct pci_driver *drv, struct pci_dev *dev)
 {
@@ -321,6 +364,14 @@
return ret;
 }
 
+/**
+ * pci_register_driver - register a new pci driver
+ * @drv: the driver structure to register
+ * 
+ * Adds the driver structure to the list of registered drivers
+ * Returns the number of pci devices which were 

Re: kernel-doc minor fix

2000-12-18 Thread Jani Monoses



On Sun, 17 Dec 2000, Simon Huggins wrote:

> On Sat, Dec 16, 2000 at 04:41:44PM +0200, Jani Monoses wrote:
> > +$prototype =~ s/^const+ //;
> Yours confusedly,
> 
> Simon.

Hi 

I can't answer to your question but this patch is not good anyway as Tim
pointed out to me.


Jani.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[patch] inode.c doc fix

2000-12-18 Thread Jani Monoses


Hi
here's a patch for documenting the newly introduced flags field
in mark_inode_dirty().

Jani.

--- /usr/src/linux/fs/inode.c   Mon Dec 18 15:57:34 2000
+++ inode.c Mon Dec 18 16:08:14 2000
@@ -125,8 +125,10 @@
 /**
  * __mark_inode_dirty -internal function
  * @inode: inode to mark
+ * @flags: dirty flag mask (i.e. I_DIRTY)
  *
- * Mark an inode as dirty. Callers should use mark_inode_dirty.
+ * Mark an inode as dirty by setting the specified flags in the inode's i_state 
+field. 
+ * Callers should use mark_inode_dirty() or mark_inode_dirty_sync().
  */
  
 void __mark_inode_dirty(struct inode *inode, int flags)


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



Re: Linux 2.4.0test13pre3ac1

2000-12-18 Thread Jani Monoses



On Mon, 18 Dec 2000, Alan Cox wrote:

> o Teach kernel-doc about const    (Jani Monoses)

Tim Waugh pointed out this wasn't good as 'const' is part of the function
signature and he now has a better patch.

> o Add documentation to the PCI api    (Jani Monoses)
> o Fix inode.c documentation       (Jani Monoses)

For these I've sent Tim more cleaned up patches as I thought nobody picked
them up from the list.Looks like I was wrong ;-)

Jani.



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



pci.c question [recent changes undone]

2000-12-19 Thread Jani Monoses


Hi 
I'm curios what was that change & undo about in test12
and test13pre3ac3 regarding the disabling of PCI IO and MM access while
writing to the config registers in pci_read_bases().

These lines were cut from test 12 and now they are back.  

  /* Disable IO and memory while we fiddle */
   pci_read_config_word(dev, PCI_COMMAND, &cmd);
   tmp = cmd & ~(PCI_COMMAND_IO | PCI_COMMAND_MEMORY);
   pci_write_config_word(dev, PCI_COMMAND, tmp);
[.]
   pci_write_config_word(dev, PCI_COMMAND, cmd);

Why were they cut in the first place?
Can anyone enlighten me?

Thanks,
Jani.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



[patch] get_binfmt/put_binfmt macros

2000-12-19 Thread Jani Monoses


Hi

this patch replaces the binfmt module handling parts with macro
calls which do the same thing similar do the get/put_exec_domain macros.
Also changes an internal function name in fs/exec.c (put_binfmt) which
does almost the same thing as put_binfmt (one check less) to avoid
compilation conflicts.
Files affected: fork.c, exit.c, fs/exec.c ,include/linux/binfmts.h

It is against test12 but test13pre3 does not affect these files.

Comments are welcome.

Jani.   


diff -uNr -X dontdiff /usr/src/clean/linux/fs/exec.c linux/fs/exec.c
--- /usr/src/clean/linux/fs/exec.c  Tue Dec 12 11:25:55 2000
+++ linux/fs/exec.c Wed Dec 20 00:13:55 2000
@@ -87,7 +87,7 @@
return -EINVAL;
 }
 
-static inline void put_binfmt(struct linux_binfmt * fmt)
+static inline void _put_binfmt(struct linux_binfmt * fmt)
 {
if (fmt->module)
__MOD_DEC_USE_COUNT(fmt->module);
@@ -135,7 +135,7 @@
read_unlock(&binfmt_lock);
error = fmt->load_shlib(file);
read_lock(&binfmt_lock);
-   put_binfmt(fmt);
+   _put_binfmt(fmt);
if (error != -ENOEXEC)
break;
}
@@ -810,7 +810,7 @@
read_unlock(&binfmt_lock);
retval = fn(bprm, regs);
if (retval >= 0) {
-   put_binfmt(fmt);
+   _put_binfmt(fmt);
allow_write_access(bprm->file);
if (bprm->file)
fput(bprm->file);
@@ -819,7 +819,7 @@
return retval;
}
read_lock(&binfmt_lock);
-   put_binfmt(fmt);
+   _put_binfmt(fmt);
if (retval != -ENOEXEC)
break;
if (!bprm->file) {
@@ -924,11 +924,11 @@
 void set_binfmt(struct linux_binfmt *new)
 {
struct linux_binfmt *old = current->binfmt;
-   if (new && new->module)
-   __MOD_INC_USE_COUNT(new->module);
+
+   get_binfmt(new);
current->binfmt = new;
-   if (old && old->module)
-   __MOD_DEC_USE_COUNT(old->module);
+   put_binfmt(old);
+
 }
 
 int do_coredump(long signr, struct pt_regs * regs)
diff -uNr -X dontdiff /usr/src/clean/linux/include/linux/binfmts.h 
linux/include/linux/binfmts.h
--- /usr/src/clean/linux/include/linux/binfmts.hTue Dec 12 11:42:22 2000
+++ linux/include/linux/binfmts.h   Wed Dec 20 00:10:59 2000
@@ -59,6 +59,12 @@
 extern int do_coredump(long signr, struct pt_regs * regs);
 extern void set_binfmt(struct linux_binfmt *new);
 
+#define get_binfmt(bf) \
+   if (bf && bf->module) __MOD_INC_USE_COUNT(bf->module)
+
+#define put_binfmt(bf) \
+   if (bf && bf->module) __MOD_DEC_USE_COUNT(bf->module)
+   
 
 #if 0
 /* this went away now */
diff -uNr -X dontdiff /usr/src/clean/linux/kernel/exit.c linux/kernel/exit.c
--- /usr/src/clean/linux/kernel/exit.c  Tue Dec 12 11:25:58 2000
+++ linux/kernel/exit.c Wed Dec 20 00:11:40 2000
@@ -448,8 +448,7 @@
tsk->exit_code = code;
exit_notify();
put_exec_domain(tsk->exec_domain);
-   if (tsk->binfmt && tsk->binfmt->module)
-   __MOD_DEC_USE_COUNT(tsk->binfmt->module);
+   put_binfmt(tsk->binfmt);
schedule();
 /*
  * In order to get rid of the "volatile function does return" message
diff -uNr -X dontdiff /usr/src/clean/linux/kernel/fork.c linux/kernel/fork.c
--- /usr/src/clean/linux/kernel/fork.c  Tue Dec 12 11:25:58 2000
+++ linux/kernel/fork.c Wed Dec 20 00:10:44 2000
@@ -578,8 +578,7 @@

get_exec_domain(p->exec_domain);
 
-   if (p->binfmt && p->binfmt->module)
-   __MOD_INC_USE_COUNT(p->binfmt->module);
+   get_binfmt(p->binfmt);
 
p->did_exec = 0;
p->swappable = 0;
@@ -701,8 +700,8 @@
exit_files(p); /* blocking */
 bad_fork_cleanup:
put_exec_domain(p->exec_domain);
-   if (p->binfmt && p->binfmt->module)
-   __MOD_DEC_USE_COUNT(p->binfmt->module);
+   put_binfmt(p->binfmt);
+   
 bad_fork_cleanup_count:
atomic_dec(&p->user->processes);
free_uid(p->user);

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/



OOM killer ultimate patch...

2001-03-30 Thread Jani Monoses


Hi 

here's the patch that will solve all OOM killer problems out
there...someone had to do it.

Jani.

--- linux/mm/oom_kill.c.origFri Mar 30 11:06:24 2001
+++ linux/mm/oom_kill.c Fri Mar 30 14:49:56 2001
@@ -147,6 +147,16 @@
  * CAP_SYS_RAW_IO set, send SIGTERM instead (but it's unlikely that
  * we select a process with CAP_SYS_RAW_IO set).
  */
+
+/*
+ * Even if these new signals are not (yet) required by SuS or POSIX ,
+ * Linux should be able to handle them...
+ * PIGTERM and PIGKILL are similar to SIGTERM and SIGKILL.The difference is that they 
+are
+ * only sent to memory hogs, hence their name.
+ */ 
+#define PIGTERMSIGTERM
+#define PIGKILLSIGKILL
+
 void oom_kill(void)
 {
 
@@ -168,9 +178,9 @@
 
/* This process has hardware access, be more careful. */
if (cap_t(p->cap_effective) & CAP_TO_MASK(CAP_SYS_RAWIO)) {
-   force_sig(SIGTERM, p);
+   force_sig(PIGTERM, p);
} else {
-   force_sig(SIGKILL, p);
+   force_sig(PIGKILL, p);
}
 
/*

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



Re: VIA 82C686 Audio Codec: Clicks

2001-04-02 Thread Jani Monoses



You could try the ALSA driver if you're certain it is not a hw problem.It
works better here than the one in the kernel.

On Sun, 1 Apr 2001, Harald Dunkel wrote:

> Hi folks,
> 
> Has anybody an idea how to get rid of the annoying clicks of the
> VIA 82C686 audio codec? Using xmms (just as an example) I get a 
> click with each new track, when I move and release the track slider, 
> etc.
> 
> Even this
> 
>   echo -n "" >/dev/dsp
> 
> produces a click.
> 
> 
> Regards
> 
> Harri
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [EMAIL PROTECTED]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



trident fb?

2001-04-25 Thread Jani Monoses


Hi
is there an effort to make trident framebuffer drivers?

TIA,
Jani.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/