[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] UDP packet reception triggers a hangup on the microblaze
Hi Bas,
Could you please use latest petalogix svn tree? I did some changes there.
https://developer.petalogix.com/pr/internal/petalinux/trunk/ (guest)
Look at this page and run netperf tools and send your results.
http://monstr.eu/wiki/doku.php?id=kernel:testing:net
And please your both testing app I can test it.
Thanks,
Michal
Bas van Tiel wrote:
> Hello All,
>
> when I transmit a continously stream of UDP packets to the microblaze
> a hangup is triggered, I have the following configuration:
>
> - petalinux-v0.30-rc1 software
> - xemac linux driver in PIO mode
> - xemac IP block which is connected via a PLB <-> OPB bridge to the
> ublaze. (the xemac is configured with "No DMA" and IPIF
> (recieve/transmit buffers) are set to 32768 bytes and FIFO depth of
> 16.)
> - EDK 9.2.02. with the patch (AR30051) from Xilinx for the microblaze v7.00.b.
> - 2 uarts, one for kernel console, other one for shell access.
> - ML506 Evalutation platform
>
> I tried to capture the packets via AF_PACKET and AF_INET, both methods
> gave the same result -> a kind of hangup of the microblaze:
>
> symptoms:
> 1) no serial input is taken from both terminals
> 2) a ping to the microblaze doesn't send a reply packet back.
>
> Has anybody seen this behavior before with the xemac connected via the
> OPB (PLB<->OPB) to the PLB bus, or is this setup with a bridge in
> between
> asking for trouble and should I look for an alternative?
>
>
> Best regards,
> Bas
>
> --- some additional info
>
>
> Linux tmb 2.6.20-uc0 #1 Tue Nov 25 14:27:21 CET 2008 microblaze
>
> CPU-Family: MicroBlaze
> FPGA-Arch: virtex5
> CPU-Ver: Unknown
> CPU-MHz: 125.00
> BogoMips: 62.05
> HW-Div: yes
> HW-Shift: yes
> Icache: 8kB
> Dcache: 8kB
> HW-Debug: yes
>
> PID PORT STAT SIZE SHARED %CPU COMMAND
> 1 S 135K 0K 0.0 /bin/init
> 2 R 0K 0K 0.0 ksoftirqd/0
> 3 S 0K 0K 0.0 events/0
> 4 S 0K 0K 0.0 khelper
> 5 S 0K 0K 0.0 kthread
> 6 S 0K 0K 0.0 kblockd/0
> 7 S 0K 0K 0.0 pdflush
> 8 S 0K 0K 0.0 pdflush
> 9 S 0K 0K 0.0 kswapd0
> 10 S 0K 0K 0.0 aio/0
> 11 S 0K 0K 0.0 mtdblockd
> 24 S 0K 0K 0.0 jffs2_gcd_mtd4
> 40 S0 S 656K 0K 0.0 /bin/sh
> 41 S0 S 643K 0K 0.0 /bin/sh --
> 42 S 67K 0K 0.0 /bin/inetd
> 55 S0 R 68K 0K 0.0 ps
>
> pseudo code:
>
> ethernet mac is running at 100 BaseTX-FD
>
> sender: (host PC)
> sd_ = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
> sendto(sd_, buf, BUFLEN, 0, (struct sockaddr*)&sa_, (socklen_t)sizeof(sa_));
>
> receiver (Microblaze)
> sd_ = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
> bind(sd_, (struct sockaddr*)&sa, sizeof(sa))
> if (!select(sd_+1, &rfds, 0, 0, &timeout)) { break; }
> size = recv(sd_, buf, BUFLEN, 0);
> ___________________________
> microblaze-uclinux mailing list
> microblaze-uclinux@xxxxxxxxxxxxxx
> Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
> Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/
>
>
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/