-Index: smartmontools/atacmds.h
-===================================================================
---- smartmontools.orig/atacmds.h 2007-03-31 15:56:12.000000000 +0200
-+++ smartmontools/atacmds.h 2007-11-01 13:16:28.000000000 +0100
-@@ -105,7 +105,6 @@
+From: Giuseppe Iuculano <iuculano@debian.org>
+Date: Thu, 27 Sep 2018 19:03:07 +0800
+Subject: _remove-pragma
+
+---
+ atacmds.h | 15 ---------------
+ 1 file changed, 15 deletions(-)
+
+diff --git a/atacmds.h b/atacmds.h
+index cbb20b6..15e54d4 100644
+--- a/atacmds.h
++++ b/atacmds.h
+@@ -130,7 +130,6 @@ typedef enum {
// Needed parts of the ATA DRIVE IDENTIFY Structure. Those labeled
// word* are NOT used.
struct ata_identify_device {
unsigned short words000_009[10];
unsigned char serial_no[20];
-@@ -127,7 +126,6 @@
+@@ -152,7 +151,6 @@ struct ata_identify_device {
ASSERT_SIZEOF_STRUCT(ata_identify_device, 512);
/* ata_smart_attribute is the vendor specific in SFF-8035 spec */
struct ata_smart_attribute {
unsigned char id;
// meaning of flag bits: see MACROS just below
-@@ -187,7 +185,6 @@
+@@ -213,7 +211,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_attribute, 12);
- /* ata_smart_values is format of the read drive Attribute command */
- /* see Table 34 of T13/1321D Rev 1 spec (Device SMART data structure) for *some* info */
+ // Format of data returned by SMART READ DATA
+ // Table 62 of T13/1699-D (ATA8-ACS) Revision 6a, September 2008
-#pragma pack(1)
struct ata_smart_values {
unsigned short int revnumber;
struct ata_smart_attribute vendor_attributes [NUMBER_ATA_SMART_ATTRIBUTES];
-@@ -219,7 +216,6 @@
+@@ -246,7 +243,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_values, 512);
*/
/* Vendor attribute of SMART Threshold (compare to ata_smart_attribute above) */
struct ata_smart_threshold_entry {
unsigned char id;
unsigned char threshold;
-@@ -230,7 +226,6 @@
+@@ -257,7 +253,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_threshold_entry, 12);
/* Format of Read SMART THreshold Command */
/* Compare to ata_smart_values above */
struct ata_smart_thresholds_pvt {
unsigned short int revnumber;
struct ata_smart_threshold_entry thres_entries[NUMBER_ATA_SMART_ATTRIBUTES];
-@@ -242,7 +237,6 @@
+@@ -269,7 +264,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_thresholds_pvt, 512);
// Table 42 of T13/1321D Rev 1 spec (Error Data Structure)
struct ata_smart_errorlog_error_struct {
unsigned char reserved;
unsigned char error_register;
-@@ -261,7 +255,6 @@
+@@ -288,7 +282,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_errorlog_error_struct, 30);
// Table 41 of T13/1321D Rev 1 spec (Command Data Structure)
struct ata_smart_errorlog_command_struct {
unsigned char devicecontrolreg;
unsigned char featuresreg;
-@@ -277,7 +270,6 @@
+@@ -304,7 +297,6 @@ struct ata_smart_errorlog_command_struct {
ASSERT_SIZEOF_STRUCT(ata_smart_errorlog_command_struct, 12);
// Table 40 of T13/1321D Rev 1 spec (Error log data structure)
struct ata_smart_errorlog_struct {
struct ata_smart_errorlog_command_struct commands[5];
struct ata_smart_errorlog_error_struct error_struct;
-@@ -286,7 +278,6 @@
+@@ -313,7 +305,6 @@ struct ata_smart_errorlog_struct {
ASSERT_SIZEOF_STRUCT(ata_smart_errorlog_struct, 90);
// Table 39 of T13/1321D Rev 1 spec (SMART error log sector)
struct ata_smart_errorlog {
unsigned char revnumber;
unsigned char error_log_pointer;
-@@ -299,7 +290,6 @@
- ASSERT_SIZEOF_STRUCT(ata_smart_errorlog, 512);
+@@ -410,7 +401,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_exterrlog, 512);
+
// Table 45 of T13/1321D Rev 1 spec (Self-test log descriptor entry)
-#pragma pack(1)
struct ata_smart_selftestlog_struct {
unsigned char selftestnumber; // Sector number register
unsigned char selfteststatus;
-@@ -312,7 +302,6 @@
+@@ -423,7 +413,6 @@ struct ata_smart_selftestlog_struct {
ASSERT_SIZEOF_STRUCT(ata_smart_selftestlog_struct, 24);
// Table 44 of T13/1321D Rev 1 spec (Self-test log data structure)
struct ata_smart_selftestlog {
unsigned short int revnumber;
struct ata_smart_selftestlog_struct selftest_struct[21];
-@@ -325,7 +314,6 @@
- ASSERT_SIZEOF_STRUCT(ata_smart_selftestlog, 512);
+@@ -472,7 +461,6 @@ struct ata_smart_extselftestlog
+ ASSERT_SIZEOF_STRUCT(ata_smart_extselftestlog, 512);
// SMART LOG DIRECTORY Table 52 of T13/1532D Vol 1 Rev 1a
-#pragma pack(1)
struct ata_smart_log_entry {
unsigned char numsectors;
unsigned char reserved;
-@@ -333,7 +321,6 @@
+@@ -480,7 +468,6 @@ struct ata_smart_log_entry {
#pragma pack()
ASSERT_SIZEOF_STRUCT(ata_smart_log_entry, 2);
struct ata_smart_log_directory {
unsigned short int logversion;
struct ata_smart_log_entry entry[255];
-@@ -343,7 +330,6 @@
+@@ -490,7 +477,6 @@ ASSERT_SIZEOF_STRUCT(ata_smart_log_directory, 512);
// SMART SELECTIVE SELF-TEST LOG Table 61 of T13/1532D Volume 1
// Revision 3
struct test_span {
uint64_t start;
uint64_t end;
-@@ -351,7 +337,6 @@
+@@ -498,7 +484,6 @@ struct test_span {
#pragma pack()
ASSERT_SIZEOF_STRUCT(test_span, 16);