Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751689AbbESVSu (ORCPT ); Tue, 19 May 2015 17:18:50 -0400 Received: from mail-ob0-f176.google.com ([209.85.214.176]:35550 "EHLO mail-ob0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751048AbbESVSs (ORCPT ); Tue, 19 May 2015 17:18:48 -0400 From: Ashley Lai X-Google-Original-From: Ashley Lai Date: Tue, 19 May 2015 16:18:44 -0500 (CDT) To: Ashley Lai cc: "Hon Ching(Vicky) Lo" , tpmdd-devel@lists.sourceforge.net, Peter Huewe , Mimi Zohar , Vicky Lo , linux-kernel@vger.kernel.org, Joy Latten Subject: Re: [PATCH 3/3] vTPM: support little endian guests In-Reply-To: Message-ID: References: <1430873486-25868-1-git-send-email-honclo@linux.vnet.ibm.com> <1430873486-25868-4-git-send-email-honclo@linux.vnet.ibm.com> User-Agent: Alpine 2.11 (DEB 23 2013-08-11) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1625 Lines: 61 >> @@ -208,11 +229,43 @@ static int tpm_binary_bios_measurements_show(struct >> seq_file *m, void *v) >> struct tcpa_event *event = v; >> char *data = v; >> int i; >> - >> - for (i = 0; i < sizeof(struct tcpa_event) + event->event_size; i++) >> + u32 x; >> + char tmp[4]; >> + >> + /* PCR */ >> + x = convert_to_host_format(event->pcr_index); >> + memcpy(tmp, &x, 4); >> + for (i = 0; i < 4; i++) >> + seq_putc(m, tmp[i]); >> + data += 4; >> + >> + /* Event Type */ >> + x = convert_to_host_format(event->event_type); >> + memcpy(tmp, &x, 4); >> + for (i = 0; i < 4; i++) >> + seq_putc(m, tmp[i]); >> + data += 4; >> + >> + /* HASH */ >> + for (i = 0; i < 20; i++) >> seq_putc(m, data[i]); >> + data += 20; >> + >> + /* Size */ >> + x = convert_to_host_format(event->event_size); >> + memcpy(tmp, &x, 4); >> + for (i = 0; i < 4; i++) >> + seq_putc(m, tmp[i]); >> + data += 4; >> + >> + /* Data */ >> + if (convert_to_host_format(event->event_size)) { >> + for (i = 0; i < convert_to_host_format(event->event_size); >> i++) >> + seq_putc(m, data[i]); >> + } >> >> return 0; >> + >> } > If the tcpa_event structure is converted, you may be able to get away with > memcpy and the for loop. You can get away with memcpy and use the original for loop. for (i = 0; i < sizeof(struct tcpa_event) + event->event_size; i++) seq_putc(m, data[i]); Thanks, --Ashley -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/