Re: alc(4) support for Atheros AR815x

2011-06-28 Thread matteo filippetto
> Hi,
>
> I have a eeepc 1001pxd with "Attansic Technology L2C" working
> and this patch didn't break the nic.
>
> One problem: very slow connectioncan I help?
> try to make some tests?
>

Just an update: slow connection was a problem with my AP wifi.

So my device is working well.

Thank you, best regards

-- 
Matteo Filippetto
http://op83.blogspot.com



Re: ansi in uvm and kern

2011-06-28 Thread Theo de Raadt
Also, for uvm, please ask ariane and oga specifically if it causes them
pain (because they both have big diffs)



Re: notyet, notever

2011-06-28 Thread Stuart Henderson
On 2011/06/28 15:05, Ted Unangst wrote:
> if pss(4) mpu support, or wdc isapnp support, or whatever else isn't done 
> yet in isa/, i'm officially betting it's not getting done.  atticize.
> 
> Index: pss.c

FWIW, there are even fewer pss(4) in dmesglog than mcd(4)..
(i.e. none, the only entries are from pasted-in kernel config files).



softdep ansi

2011-06-28 Thread Ted Unangst
The ansification I know you've all be waiting for.  md5 likes it.

There's some other work to be done in here (STATIC), but this is just 
ansi.  Also a small question of what to do with the commented parameters.  
I preserved the comments in the simplest way possible.  They aren't used 
consistently, and perhaps another pass could done to integrate them 
better, but I'm not getting carried away on the first try.

Index: ffs_softdep.c
===
RCS file: /home/tedu/cvs/src/sys/ufs/ffs/ffs_softdep.c,v
retrieving revision 1.103
diff -u -r1.103 ffs_softdep.c
--- ffs_softdep.c   12 Apr 2011 19:45:43 -  1.103
+++ ffs_softdep.c   28 Jun 2011 20:03:56 -
@@ -217,9 +217,7 @@
 #define FREE_LOCK_INTERLOCKED(lk)  free_lock_interlocked(lk, __LINE__)
 
 STATIC void
-acquire_lock(lk, line)
-   struct lockit *lk;
-   int line;
+acquire_lock(struct lockit *lk, int line)
 {
pid_t holder;
int original_line;
@@ -240,9 +238,7 @@
 }
 
 STATIC void
-free_lock(lk, line)
-   struct lockit *lk;
-   int line;
+free_lock(struct lockit *lk, int line)
 {
 
if (lk->lkt_held == -1)
@@ -252,10 +248,7 @@
 }
 
 STATIC void
-acquire_lock_interlocked(lk, s, line)
-   struct lockit *lk;
-   int s;
-   int line;
+acquire_lock_interlocked(struct lockit *lk, int s, int line)
 {
pid_t holder;
int original_line;
@@ -276,9 +269,7 @@
 }
 
 STATIC int
-free_lock_interlocked(lk, line)
-   struct lockit *lk;
-   int line;
+free_lock_interlocked(struct lockit *lk, int line)
 {
 
if (lk->lkt_held == -1)
@@ -304,10 +295,7 @@
 STATIC void sema_release(struct sema *);
 
 STATIC void
-sema_init(semap, name, prio, timo)
-   struct sema *semap;
-   char *name;
-   int prio, timo;
+sema_init(struct sema *semap, char *name, int prio, int timo)
 {
 
semap->holder = -1;
@@ -318,9 +306,7 @@
 }
 
 STATIC int
-sema_get(semap, interlock)
-   struct sema *semap;
-   struct lockit *interlock;
+sema_get(struct sema *semap, struct lockit *interlock)
 {
int s;
 
@@ -341,8 +327,7 @@
 }
 
 STATIC void
-sema_release(semap)
-   struct sema *semap;
+sema_release(struct sema *semap)
 {
 
if (semap->value <= 0 || semap->holder != CURPROC->p_pid) {
@@ -495,9 +480,7 @@
 #define WORKITEM_FREE(item, type) workitem_free((struct worklist *)item)
 
 STATIC void
-worklist_insert(head, item)
-   struct workhead *head;
-   struct worklist *item;
+worklist_insert(struct workhead *head, struct worklist *item)
 {
 
if (lk.lkt_held == -1)
@@ -511,8 +494,7 @@
 }
 
 STATIC void
-worklist_remove(item)
-   struct worklist *item;
+worklist_remove(struct worklist *item)
 {
 
if (lk.lkt_held == -1)
@@ -526,8 +508,7 @@
 }
 
 STATIC void
-workitem_free(item)
-   struct worklist *item;
+workitem_free(struct worklist *item)
 {
 
if (item->wk_state & ONWORKLIST) {
@@ -581,8 +562,7 @@
  * and does so in order from first to last.
  */
 STATIC void
-add_to_worklist(wk)
-   struct worklist *wk;
+add_to_worklist(struct worklist *wk)
 {
 
if (wk->wk_state & ONWORKLIST) {
@@ -611,8 +591,7 @@
  * until all the old ones have been purged from the dependency lists.
  */
 int 
-softdep_process_worklist(matchmnt)
-   struct mount *matchmnt;
+softdep_process_worklist(struct mount *matchmnt)
 {
struct proc *p = CURPROC;
int matchcnt, loopcount;
@@ -731,9 +710,7 @@
  * Process one item on the worklist.
  */
 STATIC int
-process_worklist_item(matchmnt, flags)
-   struct mount *matchmnt;
-   int flags;
+process_worklist_item(struct mount *matchmnt, int flags)
 {
struct worklist *wk, *wkend;
struct dirrem *dirrem;
@@ -843,9 +820,7 @@
  * Move dependencies from one buffer to another.
  */
 void
-softdep_move_dependencies(oldbp, newbp)
-   struct buf *oldbp;
-   struct buf *newbp;
+softdep_move_dependencies(struct buf *oldbp, struct buf *newbp)
 {
struct worklist *wk, *wktail;
 
@@ -868,10 +843,7 @@
  * Purge the work list of all items associated with a particular mount point.
  */
 int
-softdep_flushworklist(oldmnt, countp, p)
-   struct mount *oldmnt;
-   int *countp;
-   struct proc *p;
+softdep_flushworklist(struct mount *oldmnt, int *countp, struct proc *p)
 {
struct vnode *devvp;
int count, error = 0;
@@ -911,10 +883,7 @@
  * Flush all vnodes and worklist items associated with a specified mount point.
  */
 int
-softdep_flushfiles(oldmnt, flags, p)
-   struct mount *oldmnt;
-   int flags;
-   struct proc *p;
+softdep_flushfiles(struct mount *oldmnt, int flags, struct proc *p)
 {
int error, count, loopcnt;
 
@@ -989,11 +958,8 @@
  * This routine must be called with splbio interrupts blocked.
  */
 STATIC int
-pagedep_lookup(ip, lbn, flags, pagedeppp)
-   struct inode *ip;
-   daddr64_t lbn;
-   int flags;
-   struct pagedep **pagedeppp;
+pa

ansi in uvm and kern

2011-06-28 Thread Ted Unangst
only a few changes, and now uvm and kern should be all ansi all the time.

Index: kern/exec_subr.c
===
RCS file: /home/tedu/cvs/src/sys/kern/exec_subr.c,v
retrieving revision 1.28
diff -u -r1.28 exec_subr.c
--- kern/exec_subr.c14 Nov 2006 18:00:27 -  1.28
+++ kern/exec_subr.c28 Jun 2011 19:19:48 -
@@ -54,15 +54,7 @@
  */
 
 void
-new_vmcmd(evsp, proc, len, addr, vp, offset, prot, flags)
-   struct  exec_vmcmd_set *evsp;
-   int (*proc)(struct proc * p, struct exec_vmcmd *);
-   u_long  len;
-   u_long  addr;
-   struct  vnode *vp;
-   u_long  offset;
-   u_int   prot;
-   int flags;
+new_vmcmd(struct exec_vmcmd_set *evsp, int (*proc)(struct proc *, struct 
exec_vmcmd *), u_long len, u_long addr, struct vnode *vp, u_long offset, u_int 
prot, int flags)
 {
struct exec_vmcmd*vcp;
 
@@ -81,8 +73,7 @@
 #endif /* DEBUG */
 
 void
-vmcmdset_extend(evsp)
-   struct  exec_vmcmd_set *evsp;
+vmcmdset_extend(struct exec_vmcmd_set *evsp)
 {
struct exec_vmcmd *nvcp;
u_int ocnt;
@@ -165,9 +156,7 @@
  */
 
 int
-vmcmd_map_pagedvn(p, cmd)
-   struct proc *p;
-   struct exec_vmcmd *cmd;
+vmcmd_map_pagedvn(struct proc *p, struct exec_vmcmd *cmd)
 {
/*
 * note that if you're going to map part of a process as being
@@ -183,21 +172,21 @@
 */
 
if (cmd->ev_len == 0)
-   return(0);
+   return (0);
if (cmd->ev_offset & PAGE_MASK)
-   return(EINVAL);
+   return (EINVAL);
if (cmd->ev_addr & PAGE_MASK)
-   return(EINVAL);
+   return (EINVAL);
if (cmd->ev_len & PAGE_MASK)
-   return(EINVAL);
+   return (EINVAL);
 
/*
 * first, attach to the object
 */
 
-   uobj = uvn_attach((void *) cmd->ev_vp, VM_PROT_READ|VM_PROT_EXECUTE);
+   uobj = uvn_attach((void *)cmd->ev_vp, VM_PROT_READ|VM_PROT_EXECUTE);
if (uobj == NULL)
-   return(ENOMEM);
+   return (ENOMEM);
 
/*
 * do the map
@@ -278,9 +267,7 @@
  */
 
 int
-vmcmd_map_zero(p, cmd)
-   struct proc *p;
-   struct exec_vmcmd *cmd;
+vmcmd_map_zero(struct proc *p, struct exec_vmcmd *cmd)
 {
int error;
 
@@ -313,9 +300,7 @@
  */
 
 int
-exec_setup_stack(p, epp)
-   struct proc *p;
-   struct exec_package *epp;
+exec_setup_stack(struct proc *p, struct exec_package *epp)
 {
 
 #ifdef MACHINE_STACK_GROWS_UP
@@ -354,5 +339,5 @@
VM_PROT_READ|VM_PROT_WRITE);
 #endif
 
-   return 0;
+   return (0);
 }
Index: uvm/uvm_map.c
===
RCS file: /home/tedu/cvs/src/sys/uvm/uvm_map.c,v
retrieving revision 1.141
diff -u -r1.141 uvm_map.c
--- uvm/uvm_map.c   6 Jun 2011 17:10:23 -   1.141
+++ uvm/uvm_map.c   28 Jun 2011 19:24:50 -
@@ -3356,8 +3356,7 @@
  */
 
 void
-uvmspace_share(p1, p2)
-   struct proc *p1, *p2;
+uvmspace_share(struct proc *p1, struct proc *p2)
 {
p2->p_vmspace = p1->p_vmspace;
p1->p_vmspace->vm_refcnt++;
@@ -3924,10 +3923,8 @@
  */
 
 void
-uvm_object_printit(uobj, full, pr)
-   struct uvm_object *uobj;
-   boolean_t full;
-   int (*pr)(const char *, ...);
+uvm_object_printit(struct uvm_object *uobj, boolean_t full,
+int (*pr)(const char *, ...))
 {
struct vm_page *pg;
int cnt = 0;
@@ -3965,10 +3962,8 @@
"\31PMAP1\32PMAP2\33PMAP3";
 
 void
-uvm_page_printit(pg, full, pr)
-   struct vm_page *pg;
-   boolean_t full;
-   int (*pr)(const char *, ...);
+uvm_page_printit(struct vm_page *pg, boolean_t full,
+int (*pr)(const char *, ...))
 {
struct vm_page *tpg;
struct uvm_object *uobj;
Index: uvm/uvm_stat.c
===
RCS file: /home/tedu/cvs/src/sys/uvm/uvm_stat.c,v
retrieving revision 1.22
diff -u -r1.22 uvm_stat.c
--- uvm/uvm_stat.c  17 Jun 2009 00:13:59 -  1.22
+++ uvm/uvm_stat.c  28 Jun 2011 19:25:28 -
@@ -184,7 +184,7 @@
 #endif /* UVMHIST */
 
 void
-uvmcnt_dump()
+uvmcnt_dump(void)
 {
struct uvm_cnt *uvc = uvm_cnt_head;



notyet, notever

2011-06-28 Thread Ted Unangst
if pss(4) mpu support, or wdc isapnp support, or whatever else isn't done 
yet in isa/, i'm officially betting it's not getting done.  atticize.

Index: isapnp.c
===
RCS file: /home/tedu/cvs/src/sys/dev/isa/isapnp.c,v
retrieving revision 1.39
diff -u -r1.39 isapnp.c
--- isapnp.c7 Apr 2011 15:30:16 -   1.39
+++ isapnp.c28 Jun 2011 18:59:22 -
@@ -329,14 +329,6 @@
return error;
 
 bad:
-#ifdef notyet
-   for (ndrq--; ndrq >= 0; ndrq--)
-   isapnp_free_pin(&ipa->ipa_drq[ndrq]);
-
-   for (nirq--; nirq >= 0; nirq--)
-   isapnp_free_pin(&ipa->ipa_irq[nirq]);
-#endif
-
for (nmem32--; nmem32 >= 0; nmem32--)
isapnp_free_region(memt, &ipa->ipa_mem32[nmem32]);
 
@@ -371,14 +363,6 @@
struct isa_attach_args *ipa;
 {
int i;
-
-#ifdef notyet
-   for (i = 0; i < ipa->ipa_ndrq; i++)
-   isapnp_free_pin(&ipa->ipa_drq[i]);
-
-   for (i = 0; i < ipa->ipa_nirq; i++)
-   isapnp_free_pin(&ipa->ipa_irq[i]);
-#endif
 
for (i = 0; i < ipa->ipa_nmem32; i++)
isapnp_free_region(memt, &ipa->ipa_mem32[i]);
Index: pss.c
===
RCS file: /home/tedu/cvs/src/sys/dev/isa/pss.c,v
retrieving revision 1.24
diff -u -r1.24 pss.c
--- pss.c   30 Jun 2010 11:21:35 -  1.24
+++ pss.c   28 Jun 2011 19:02:07 -
@@ -127,24 +127,6 @@
int mic_mute, cd_mute, dac_mute;
 };
 
-#ifdef notyet
-struct mpu_softc {
-   struct  device sc_dev;  /* base device */
-   void*sc_ih; /* interrupt vectoring */
-
-   int sc_iobase;  /* MIDI I/O port base address */
-   int sc_irq; /* MIDI interrupt */
-};
-
-struct pcd_softc {
-   struct  device sc_dev;  /* base device */
-   void*sc_ih; /* interrupt vectoring */
-
-   int sc_iobase;  /* CD I/O port base address */
-   int sc_irq; /* CD interrupt */
-};
-#endif
-
 #ifdef AUDIO_DEBUG
 #define DPRINTF(x) if (pssdebug) printf x
 intpssdebug = 0;
@@ -158,18 +140,7 @@
 intspprobe(struct device *, void *, void *);
 void   spattach(struct device *, struct device *, void *);
 
-#ifdef notyet
-intmpuprobe(struct device *, void *, void *);
-void   mpuattach(struct device *, struct device *, void *);
-
-intpcdprobe(struct device *, void *, void *);
-void   pcdattach(struct device *, struct device *, void *);
-#endif
-
 intpssintr(void *);
-#ifdef notyet
-intmpuintr(void *);
-#endif
 
 intpss_speaker_ctl(void *, int);
 
@@ -187,10 +158,6 @@
 intpss_setdma(int, int);
 intpss_testirq(struct pss_softc *, int);
 intpss_testdma(struct pss_softc *, int);
-#ifdef notyet
-intpss_reset_dsp(struct pss_softc *);
-intpss_download_dsp(struct pss_softc *, u_char *, int);
-#endif
 #ifdef AUDIO_DEBUG
 void   pss_dump_regs(struct pss_softc *);
 #endif
@@ -268,24 +235,6 @@
NULL, "sp", DV_DULL
 };
 
-#ifdef notyet
-struct cfattach mpu_ca = {
-   sizeof(struct mpu_softc), mpuprobe, mpuattach
-};
-
-struct cfdriver mpu_cd = {
-   NULL, "mpu", DV_DULL
-};
-
-struct cfattach pcd_ca = {
-   sizeof(struct pcd_softc), pcdprobe, pcdattach
-};
-
-struct cfdriver pcd_cd = {
-   NULL, "pcd", DV_DULL
-};
-#endif
-
 struct audio_device pss_device = {
"pss,ad1848",
"",
@@ -577,109 +526,6 @@
 return(ret);
 }
 
-#ifdef notyet
-int
-pss_reset_dsp(sc)
-   struct pss_softc *sc;
-{
-u_long i;
-int pss_base = sc->sc_iobase;
-
-outw(pss_base+PSS_CONTROL, PSS_RESET);
-
-for (i = 0; i < 32768; i++)
-   inw(pss_base+PSS_CONTROL);
-
-outw(pss_base+PSS_CONTROL, 0);
-
-return 1;
-}
-
-/*
- * This function loads an image into the PSS
- * card.  The function loads the file by
- * resetting the dsp and feeding it the boot bytes.
- * First you feed the ASIC the first byte of
- * the boot sequence. The ASIC waits until it
- * detects a BMS and RD and asserts BR
- * and outputs the byte.  The host must poll for
- * the BG signal. It then feeds the ASIC another
- * byte which removes BR.
- */
-int
-pss_download_dsp(sc, block, size)
-   struct pss_softc *sc;
-   u_char *block;
-   int size;
-{
-int i, val, count;
-int pss_base = sc->sc_iobase;
-
-DPRINTF(("pss: downloading boot code..."));
-
-/* Warn DSP software that a boot is coming */
-outw(pss_base+PSS_DATA, 0x00fe);
-
-for (i = 0; i < 32768; i++)
-   if (inw(pss_base+PSS_DATA) == 0x5500)
-   break;
-outw(pss_base+PSS_DATA, *block++);
-
-pss_reset_dsp(sc);
-
-DPRINTF(("start "));
-
-count = 1;
-while(1) {
-   int j;
-   for (j=0; j<327670; j++) {
-   /* Wait for BG to appear */
-   if (inw(pss_base+PSS_STATUS) & PSS_FLAG3)
-   break;
-  

bridge interface search

2011-06-28 Thread Camiel Dobbelaar
This diff changes the if_bridge pointer of an interface (struct ifnet) to 
not point to "the bridge" but to its own "bridge interface" configuration.
Should be safe because an interface can only be part of one bridge.

This way all the LIST_FOREACH lineair searches in the bridge code can be 
replaced.  There are also two of those in the forwarding path so this diff 
should make the bridge faster, especially with lots of interfaces.

I've renamed it to "if_bridge_port" to smoke out all users and because 
it's clearer.  (my fingers itch to rename "bridge_iflist" too as noted in 
the diff :-) )

Most of the diff is mechanical.  The if_ether.c change got pretty hairy 
though and could some more eyes.

And the whole thing could use some substantial testing...



Index: sys/dev/isa/if_ie.c
===
RCS file: /cvs/src/sys/dev/isa/if_ie.c,v
retrieving revision 1.35
diff -u -r1.35 if_ie.c
--- sys/dev/isa/if_ie.c 28 Nov 2008 02:44:17 -  1.35
+++ sys/dev/isa/if_ie.c 24 Jun 2011 18:29:18 -
@@ -1054,16 +1054,16 @@
 */
 #if NBPFILTER > 0
*to_bpf = (sc->sc_arpcom.ac_if.if_bpf != 0) ||
-   (sc->sc_arpcom.ac_if.if_bridge != NULL);
+   (sc->sc_arpcom.ac_if.if_bridge_port != NULL);
 #else
-   *to_bpf = (sc->sc_arpcom.ac_if.if_bridge != NULL);
+   *to_bpf = (sc->sc_arpcom.ac_if.if_bridge_port != NULL);
 #endif
/* If for us, accept and hand up to BPF */
if (ether_equal(eh->ether_dhost, sc->sc_arpcom.ac_enaddr))
return 1;
 
 #if NBPFILTER > 0
-   if (*to_bpf && sc->sc_arpcom.ac_if.if_bridge == NULL)
+   if (*to_bpf && sc->sc_arpcom.ac_if.if_bridge_port == NULL)
*to_bpf = 2; /* we don't need to see it */
 #endif
 
@@ -1095,9 +1095,9 @@
 */
 #if NBPFILTER > 0
*to_bpf = (sc->sc_arpcom.ac_if.if_bpf != 0) ||
-   (sc->sc_arpcom.ac_if.if_bridge != NULL);
+   (sc->sc_arpcom.ac_if.if_bridge_port != NULL);
 #else
-   *to_bpf = (sc->sc_arpcom.ac_if.if_bridge != NULL);
+   *to_bpf = (sc->sc_arpcom.ac_if.if_bridge_port != NULL);
 #endif
/* We want to see multicasts. */
if (eh->ether_dhost[0] & 1)
@@ -1109,7 +1109,7 @@
 
/* Anything else goes to BPF but nothing else. */
 #if NBPFILTER > 0
-   if (*to_bpf && sc->sc_arpcom.ac_if.if_bridge == NULL)
+   if (*to_bpf && sc->sc_arpcom.ac_if.if_bridge_port == NULL)
*to_bpf = 2;
 #endif
return 1;
Index: sys/net/bridgestp.c
===
RCS file: /cvs/src/sys/net/bridgestp.c,v
retrieving revision 1.39
diff -u -r1.39 bridgestp.c
--- sys/net/bridgestp.c 20 Nov 2010 14:23:09 -  1.39
+++ sys/net/bridgestp.c 24 Jun 2011 18:29:18 -
@@ -1644,7 +1644,7 @@
 
if (ifp->if_type == IFT_BRIDGE)
return;
-   sc = (struct bridge_softc *)ifp->if_bridge;
+   sc = ((struct bridge_iflist *)ifp->if_bridge_port)->bridge_sc;
 
s = splnet();
LIST_FOREACH(p, &sc->sc_iflist, next) {
@@ -2133,15 +2133,8 @@
err = ENOENT;
break;
}
-   if ((caddr_t)sc != ifs->if_bridge) {
-   err = ESRCH;
-   break;
-   }
-   LIST_FOREACH(p, &sc->sc_iflist, next) {
-   if (p->ifp == ifs)
-   break;
-   }
-   if (p == LIST_END(&sc->sc_iflist)) {
+   p = (struct bridge_iflist *)ifs->if_bridge_port;
+   if (p == NULL || p->bridge_sc != sc) {
err = ESRCH;
break;
}
Index: sys/net/if.c
===
RCS file: /cvs/src/sys/net/if.c,v
retrieving revision 1.234
diff -u -r1.234 if.c
--- sys/net/if.c13 Mar 2011 15:31:41 -  1.234
+++ sys/net/if.c24 Jun 2011 18:29:18 -
@@ -531,7 +531,7 @@
 
 #if NBRIDGE > 0
/* Remove the interface from any bridge it is part of.  */
-   if (ifp->if_bridge)
+   if (ifp->if_bridge_port)
bridge_ifdetach(ifp);
 #endif
 
@@ -1101,7 +1101,7 @@
carp_carpdev_state(ifp);
 #endif
 #if NBRIDGE > 0
-   if (ifp->if_bridge)
+   if (ifp->if_bridge_port)
bstp_ifstate(ifp);
 #endif
rt_ifmsg(ifp);
@@ -1137,7 +1137,7 @@
carp_carpdev_state(ifp);
 #endif
 #if NBRIDGE > 0
-   if (ifp->if_bridge)
+   if (ifp->if_bridge_port)
bstp_ifstate(ifp);
 #endif
rt_ifmsg(ifp);
Index: sys/net/if.h
===
RCS file: /cvs/src/sys/net/if.h,

fix gcc -rdynamic

2011-06-28 Thread Jonathan Gray
The following fixes the gcc link spec so that gcc -rdynamic
will pass -export-dynamic to ld(1).  export-dynamic/-E has
been a valid gnu ld option since 1994 and we use 2.15 everywhere
at the moment so this should be fine.  objdump -T can
be used to easily test this.

This diff does not contain powerpc/rs6000 as it is
already in the spec there.

>From http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html

-rdynamic
Pass the flag -export-dynamic to the ELF linker, on targets that
support it. This instructs the linker to add all symbols, not only
used ones, to the dynamic symbol table. This option is needed for
some uses of dlopen or to allow obtaining backtraces from within a
program.

Index: egcs/gcc/config/sparc/openbsd.h
===
RCS file: /cvs/src/gnu/egcs/gcc/config/sparc/openbsd.h,v
retrieving revision 1.5
diff -u -p -r1.5 openbsd.h
--- egcs/gcc/config/sparc/openbsd.h 13 Jan 2006 17:51:18 -  1.5
+++ egcs/gcc/config/sparc/openbsd.h 28 Jun 2011 17:17:01 -
@@ -32,6 +32,7 @@ Boston, MA 02111-1307, USA.  */
%{shared:-shared} %{R*} \
%{static:-Bstatic} \
%{!static:-Bdynamic} \
+   %{rdynamic:-export-dynamic} \
%{assert*} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 
Index: usr.bin/gcc/gcc/config/alpha/openbsd.h
===
RCS file: /cvs/src/gnu/usr.bin/gcc/gcc/config/alpha/openbsd.h,v
retrieving revision 1.10
diff -u -p -r1.10 openbsd.h
--- usr.bin/gcc/gcc/config/alpha/openbsd.h  2 Mar 2011 04:12:50 -   
1.10
+++ usr.bin/gcc/gcc/config/alpha/openbsd.h  28 Jun 2011 17:17:02 -
@@ -31,6 +31,7 @@ Boston, MA 02111-1307, USA.  */
%{shared:-shared} %{R*} \
%{static:-Bstatic} \
%{!static:-Bdynamic} \
+   %{rdynamic:-export-dynamic} \
%{assert*} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 
Index: usr.bin/gcc/gcc/config/arm/openbsd.h
===
RCS file: /cvs/src/gnu/usr.bin/gcc/gcc/config/arm/openbsd.h,v
retrieving revision 1.9
diff -u -p -r1.9 openbsd.h
--- usr.bin/gcc/gcc/config/arm/openbsd.h11 Nov 2008 23:48:19 -  
1.9
+++ usr.bin/gcc/gcc/config/arm/openbsd.h28 Jun 2011 17:17:02 -
@@ -87,6 +87,7 @@ Boston, MA 02111-1307, USA.  */
%{shared:-shared} %{R*} \
%{static:-Bstatic} \
%{!static:-Bdynamic} \
+   %{rdynamic:-export-dynamic} \
%{assert*} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 #endif
Index: usr.bin/gcc/gcc/config/sh/openbsd.h
===
RCS file: /cvs/src/gnu/usr.bin/gcc/gcc/config/sh/openbsd.h,v
retrieving revision 1.11
diff -u -p -r1.11 openbsd.h
--- usr.bin/gcc/gcc/config/sh/openbsd.h 16 Jun 2007 01:09:43 -  1.11
+++ usr.bin/gcc/gcc/config/sh/openbsd.h 28 Jun 2011 17:17:02 -
@@ -64,7 +64,13 @@ Boston, MA 02111-1307, USA.  */
   "%{g:%{!nostdlib:-L/usr/lib/debug}} %{!nostdlib:%{!r*:%{!e*:-e __start}}} 
-dc -dp %{assert*}"
 #else
 #define SUBTARGET_LINK_SPEC \
-  "%{g:%{!nostdlib:-L/usr/lib/debug}} %{!shared:%{!nostdlib:%{!r*:%{!e*:-e 
__start %{shared:-Bshareable -x} -dc -dp %{R*} %{static:-Bstatic} 
%{assert*} %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
+  "%{g:%{!nostdlib:-L/usr/lib/debug}} \
+   %{!shared:%{!nostdlib:%{!r*:%{!e*:-e __start \
+   %{shared:-Bshareable -x} -dc -dp %{R*} \
+   %{static:-Bstatic} \
+   %{rdynamic:-export-dynamic} \
+   %{assert*} \
+   %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 #endif
 
 
Index: gcc/gcc/config/alpha/openbsd.h
===
RCS file: /cvs/src/gnu/gcc/gcc/config/alpha/openbsd.h,v
retrieving revision 1.3
diff -u -p -r1.3 openbsd.h
--- gcc/gcc/config/alpha/openbsd.h  12 May 2010 18:19:50 -  1.3
+++ gcc/gcc/config/alpha/openbsd.h  28 Jun 2011 17:17:05 -
@@ -31,6 +31,7 @@ Boston, MA 02110-1301, USA.  */
%{shared:-shared} %{R*} \
%{static:-Bstatic} \
%{!static:-Bdynamic} \
+   %{rdynamic:-export-dynamic} \
%{assert*} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 
Index: gcc/gcc/config/arm/openbsd.h
===
RCS file: /cvs/src/gnu/gcc/gcc/config/arm/openbsd.h,v
retrieving revision 1.3
diff -u -p -r1.3 openbsd.h
--- gcc/gcc/config/arm/openbsd.h25 Jun 2011 20:56:21 -  1.3
+++ gcc/gcc/config/arm/openbsd.h28 Jun 2011 17:17:05 -
@@ -72,6 +72,7 @@ Boston, MA 02111-1307, USA.  */
%{shared:-shared} %{R*} \
%{static:-Bstatic} \
%{!static:-Bdynamic} \
+   %{rdynamic:-export-dynamic} \
%{assert*} \
%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}"
 #endif
Index: gcc/gcc/config/i386/openbsd64.h
===
RCS file: /cvs/src/gnu/gcc/gcc/config/i386/openb

Re: alc(4) support for Atheros AR815x

2011-06-28 Thread matteo filippetto
2011/5/16 Stuart Henderson :
> So far, only had reports from L1C and the new devices (which is
> not the point of sending out this sort of diff). This is a fairly
> large diff and changes behaviour for existing devices.
>
> Has anyone with a currently-working L2C tested this to make sure
> it doesn't break their nic?
>

Hi,

I have a eeepc 1001pxd with "Attansic Technology L2C" working
and this patch didn't break the nic.

One problem: very slow connectioncan I help?
try to make some tests?

Latest snapshot of i386.

Attached dmesg and pcidump.

Best regards.

Matteo Filippetto
Domain /dev/pci0:
 0:0:0: Intel Pineview DMI
0x: Vendor ID: 8086 Product ID: a010
0x0004: Command: 0006 Status ID: 2090
0x0008: Class: 06 Subclass: 00 Interface: 00 Revision: 00
0x000c: BIST: 00 Header Type: 00 Latency Timer: 00 Cache Line Size: 00
0x0010: BAR empty ()
0x0014: BAR empty ()
0x0018: BAR empty ()
0x001c: BAR empty ()
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1043 Product ID: 83ac
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 00 Line: 00 Min Gnt: 00 Max Lat: 00
0x00e0: Capability 0x09: Vendor Specific
 0:2:0: Intel Pineview Video
0x: Vendor ID: 8086 Product ID: a011
0x0004: Command: 0007 Status ID: 0090
0x0008: Class: 03 Subclass: 00 Interface: 00 Revision: 00
0x000c: BIST: 00 Header Type: 80 Latency Timer: 00 Cache Line Size: 00
0x0010: BAR mem 32bit addr: 0xf7e0/0x0008
0x0014: BAR io addr: 0xdc00/0x0008
0x0018: BAR mem prefetchable 32bit addr: 0xd000/0x1000
0x001c: BAR mem 32bit addr: 0xf7d0/0x0010
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1043 Product ID: 83ac
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 01 Line: 0f Min Gnt: 00 Max Lat: 00
0x0090: Capability 0x05: Message Signaled Interrupts (MSI)
0x00d0: Capability 0x01: Power Management
 0:2:1: Intel Pineview Video
0x: Vendor ID: 8086 Product ID: a012
0x0004: Command: 0007 Status ID: 0090
0x0008: Class: 03 Subclass: 80 Interface: 00 Revision: 00
0x000c: BIST: 00 Header Type: 80 Latency Timer: 00 Cache Line Size: 00
0x0010: BAR mem 32bit addr: 0xf7e8/0x0008
0x0014: BAR empty ()
0x0018: BAR empty ()
0x001c: BAR empty ()
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1043 Product ID: 83ac
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 00 Line: 00 Min Gnt: 00 Max Lat: 00
0x00d0: Capability 0x01: Power Management
 0:27:0: Intel 82801GB HD Audio
0x: Vendor ID: 8086 Product ID: 27d8
0x0004: Command: 0006 Status ID: 0010
0x0008: Class: 04 Subclass: 03 Interface: 00 Revision: 02
0x000c: BIST: 00 Header Type: 00 Latency Timer: 00 Cache Line Size: 08
0x0010: BAR mem 64bit addr: 0xf7cf8000/0x4000
0x0018: BAR empty ()
0x001c: BAR empty ()
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1043 Product ID: 8442
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 01 Line: 04 Min Gnt: 00 Max Lat: 00
0x0050: Capability 0x01: Power Management
0x0060: Capability 0x05: Message Signaled Interrupts (MSI)
0x0070: Capability 0x10: PCI Express
 0:28:0: Intel 82801GB PCIE
0x: Vendor ID: 8086 Product ID: 27d0
0x0004: Command: 0104 Status ID: 0010
0x0008: Class: 06 Subclass: 04 Interface: 00 Revision: 02
0x000c: BIST: 00 Header Type: 81 Latency Timer: 00 Cache Line Size: 08
0x0010: 
0x0014: 
0x0018: Primary Bus: 0 Secondary Bus: 4 Subordinate Bus: 4 
Secondary Latency Timer: 00
0x001c: I/O Base: f0 I/O Limit: 00 Secondary Status: 2000
0x0020: Memory Base: fff0 Memory Limit: 
0x0024: Prefetch Memory Base: fff1 Prefetch Memory Limit: 0001
0x0028: Prefetch Memory Base Upper 32 Bits: 
0x002c: Prefetch Memory Limit Upper 32 Bits: 
0x0030: I/O Base Upper 16 Bits:  I/O Limit Upper 16 Bits: 
0x0038: Expansion ROM Base Address: 
0x003c: Interrupt Pin: 01 Line: 0f Bridge Control: 0002
0x0040: Capability 0x10: PCI Express
  

Mercedes Sosa (55 álbumes) - Discografía mas Pendrive de regalo

2011-06-28 Thread Discos MP3 - Solo de Oferta
1 La vozde la zafra 2 Maestros del folklore
3 Canciones con fundamento 4 Romance de la muerte de Juan Lavalle 5 Hermano
6 Yo no canto por cantar 7 Para cantarle a mi gente 8 Con sabor a Mercedes
Sosa 9 Mujeres Argentinas 10 El grito de la tierra 11 Navidad con Mercedes
Sosa 12 Homenaje a Violeta Parra 13 Hasta la victoria 14 Cantata
sudamericana 15 Traigo un pueblo en mi voz 16 A que florezca mi pueblo 17
Niño de mañana 18 En direccion del viento 19 Mercedes Sosa
interpreta a Atahualpa Yupanqui 20 O cio da terra 21 Si se calla el cantor
22 Serenata para la tierra de uno 23 A quien doy 24 Gravado ao vivo no
Brasil 25 Mercedes Sosa en Argentina 26 Meeutsche Whelle 27 Varios - Voices
of freedom concert 28 Como un pajaro libre 29 Mercedes Sosa 30 Recital 31
Sera posible el sur 32 Corazon americano 33 Vengo a ofrecer mi corazon 34
Mercedes Sosa '86 35 Mercedes sosa '87 36 Amigos mios 37 En vivo en Europa
38 30 años 39 Sino 40 Gestos de amor 41 Disco de Oro 42 Gracias a la
vida 43 Escondido en mi pais 44 Alta fidelidad  45 Al despertar 46 Misa
criolla 47 Acustico 48 Voz y sentimiento 49 Sosa Heredia Gieco Serenata
para la tierra deuno - 50 Argentina quiere
cantar - 51 O Melhor de- 52 Corazon libre -
53 Festival de la tonada -54 Cantora - 55 De
mi



Re: minor mount_ntfs cleanup

2011-06-28 Thread Jasper Lievisse Adriaanse
On Mon, Jun 27, 2011 at 06:15:15PM -0400, Kenneth R Westerback wrote:
> On Mon, Jun 27, 2011 at 04:52:46PM -0400, Ted Unangst wrote:
> > The original porting effort left behind some unneeded bits.
> 
> I'm not going to encourage NTFS use by ok'ing it. But if I was, I
> would.
> 
>  Ken
Yep, Ok with me.

> > Index: mount_ntfs.c
> > ===
> > RCS file: /cvs/src/sbin/mount_ntfs/mount_ntfs.c,v
> > retrieving revision 1.13
> > diff -u -r1.13 mount_ntfs.c
> > --- mount_ntfs.c27 Jun 2011 19:47:22 -  1.13
> > +++ mount_ntfs.c27 Jun 2011 20:51:26 -
> > @@ -34,39 +34,26 @@
> >   * Id: mount_ntfs.c,v 1.1.1.1 1999/02/03 03:51:19 semenu Exp
> >   */
> >  
> > -#include 
> >  #include 
> > -#define NTFS
> >  #include 
> >  #include 
> > -#include 
> > +
> >  #include 
> > -#include 
> > -#include 
> >  #include 
> >  #include 
> >  #include 
> >  #include 
> >  #include 
> > -#include 
> >  
> >  #include 
> >  
> >  static const struct mntopt mopts[] = {
> > MOPT_STDOPTS,
> > -#ifdef MNT_GETARGS
> > -   MOPT_GETARGS,
> > -#endif
> > { NULL }
> >  };
> >  
> > -#ifndef __dead2
> > -#define __dead2 __attribute__((__noreturn__))
> > -#endif
> > -
> > -static voidusage(void) __dead2;
> > -mode_t a_mask(char *);
> > -int main(int, char **);
> > +static __dead void usage(void);
> > +static mode_t a_mask(char *);
> >  
> >  int
> >  main(int argc, char *argv[])
> > @@ -77,7 +64,7 @@
> > char *dev, dir[MAXPATHLEN];
> >  
> > mntflags = set_gid = set_uid = set_mask = 0;
> > -   (void)memset(&args, '\0', sizeof(args));
> > +   memset(&args, 0, sizeof(args));
> >  
> > while ((c = getopt(argc, argv, "aiu:g:m:o:")) !=  -1) {
> > switch (c) {
> > @@ -102,15 +89,12 @@
> > case 'o':
> > getmntopts(optarg, mopts, &mntflags);
> > break;
> > -   case '?':
> > default:
> > usage();
> > break;
> > }
> > }
> >  
> > -   mntflags |= MNT_RDONLY;
> > -
> > if (optind + 2 != argc)
> > usage();
> >  
> > @@ -119,7 +103,9 @@
> > err(1, "realpath %s", argv[optind + 1]);
> >  
> > args.fspec = dev;
> > -   args.export_info.ex_root = 65534;   /* unchecked anyway on DOS fs */
> > +   args.export_info.ex_root = 65534;   /* unchecked anyway on NTFS */
> > +
> > +   mntflags |= MNT_RDONLY;
> > if (mntflags & MNT_RDONLY)
> > args.export_info.ex_flags = MNT_EXRDONLY;
> > else
> > @@ -138,18 +124,10 @@
> > if (mount(MOUNT_NTFS, dir, mntflags, &args) < 0)
> > err(EX_OSERR, "%s on %s", dev, dir);
> >  
> > -#ifdef MNT_GETARGS
> > -   if (mntflags & MNT_GETARGS) {
> > -   char buf[1024];
> > -   (void)snprintb(buf, sizeof(buf), NTFS_MFLAG_BITS, args.flag);
> > -   printf("uid=%d, gid=%d, mode=0%o, flags=%s\n", args.uid,
> > -   args.gid, args.mode, buf);
> > -   }
> > -#endif
> > -   exit (0);
> > +   exit(0);
> >  }
> >  
> > -mode_t
> > +static mode_t
> >  a_mask(char *s)
> >  {
> > int done, rv;
> 

-- 
Cheers,
Jasper

"Capable, generous men do not create victims, they nurture them."