Hi, The reason why the code does not exit is because it occur that the data present where the GetDeviceId answer completion code is 0. (Good completion code). Also, it does not work because the retry was not implemented. I do all my test without retry to find out the possible problem. With a serial line of couple of inches, there should be no error.
JM -----Message d'origine----- De : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] De la part de Jarrod B Johnson Envoyé : Saturday, November 18, 2006 12:23 PM À : Audet, Jean-Michel Cc : ipmitool-devel@lists.sourceforge.net Objet : Re: [Ipmitool-devel] Loosing SOL packet when KeepAlive feature is ON True, you see a problem (btw, running CVS you should have seen less of one, and another note I'm sending will have a patch), but your BMC seems to have a bug as well. I followed through the incorrect flow in the CVS tree and the only bad thing that should've happened now could possibly be ipmitool exiting due to checking the wrong ccode value, but if you actually SOL data in the user terminal, something is wrong with your BMC. What should have happened: -ipmitool sends getdeviceid -BMC sends sol data, ipmitool never acks the SOL data, keepalive either returns (innocuous) or possibly mistakenly causes ipmitool to exit (which is not likely and not the symptom you described). -ipmitool receives getDeviceID response on SOL receiving code path, but ack_sol_packet, check_sol_packet_for_new_data, and output all ignore the wrong packet as of July's CVS or so (this is when ipmitool 1.8.8 spits out some garbage). -BMC realizes it didn't get an SOL ack, and it retries SOL data, and ipmitool is in the right state, data is nevel lost. Are you sure your BMC code has the right step correctly? On Mon, 2006-11-13 at 15:41 -0500, Audet, Jean-Michel wrote: > Hi, > > I found the problem in the ipmitool source. Here is what > occur step by step. > > > > 1. Receiving a sol packet ID 4, length 24 bytes -> 24 bytes are > displayed on the console > 2. Sending a sol acknowledge ID 4, length 0 (only ack) > 3. Sending the keepalive GetDevice Id > 4. Waiting for an answer (to the IPMI Get Device Id) but... > 5. Receiving a sol packet ID 5, length 24 bytes > 6. Check that CC is OK for IPMI Get Device ID (it occurs that > yes, the completion code is 0) > > > > SOL received packet is used as the answer for the GetDeviceID instead > of the real GetDeviceId answer. Then, the answer to the GetDeviceId > is interpreted by the SOL red pill function and some garbage is thrown > on the screen (I had already solve a month ago the garbage on the > screen bug by ignoring the answer). > > > > > > This brings me to a bigger problem. It looks like IPMITOOL is not > done in a way that question and answer can be dissociated. There is > no guarantee that packet of a different payload type could be received > in between of question/answer of another type... or of the same type. > For example, a SOL packet can be sent in between a getDeviceId > question/answer. This is for 99% of the time not a problem. > > > > Here is what I propose. Instead of using a getDeviceId for the > keepalive mechanism, we could use a simple empty SOL transmit. (Valid > sequence number, no acknowledge, length of 0). This will trig no work > on the BMC side and will no generate also an answer. The impact on > the traffic is lower and we bypass the problem describe above. Also, > I can reset the keepalive timestamp when some other sol packet is > transmit.. This way, no extra traffic if there is already running > traffic/ > > > > Any problem with that? > > > > When the IPMITOOL release is schedule (1.8.9??) ? > > > > I have tried the fix and for our implementation, it works correctly. > > > > Jean-Michel Audet > > > > > > > > > > > ______________________________________________________________________ > De :Audet, Jean-Michel > Envoyé : Monday, November 13, 2006 1:59 PM > À : ipmitool-devel@lists.sourceforge.net > Objet : Loosing SOL packet when KeepAlive feature is ON > > > > > Hi, > > I am currently developing a SOL implementation on our > products. I periodically loose some data and I just found something. > During a short moment, when the keep alive mechanism send a > GetDeviceID packet to the bmc, the transmit packet to the console are > not displayed (not received). > > I have some way to verify the traffic on our BMC and the problem occur > always during a keep alive GetDeviceID. When I am disabling the keep > alive feature, my problem disappears. I checked a little bit on the > code and so far, I am not sure where the problem is. > > > > Anyone see this problem? Any ideas where the problem might be? It > looks like when the GetDeviceId is sent, that no SOL packet can be > sent before the answer is received.. > > > > Thanks! > > > > Jean-Michel Audet > > > > > > > > > > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ Ipmitool-devel mailing list > Ipmitool-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/ipmitool-devel ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Ipmitool-devel mailing list Ipmitool-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ipmitool-devel ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Ipmitool-devel mailing list Ipmitool-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ipmitool-devel