# US 2017/0286137 A1 · Generic physical location codes for virtual system and partition cloning

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0286137 A1
- Document ID: US20170286137A1
- Status: Published application
- Kind: A1
- Application number: 15/628,744
- Filed: 2017-06-21
- Published: 2017-10-05
- Earliest claimed: 2014-05-30
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Eric P. Fried; Swaroop Jayanthi; Thangadurai Muthusamy; Amartey S. Pearson
- Web page: https://patentgrep.com/patent/US20170286137A1

## CPC

- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 13/385: {for adaptation of a particular data processing system to different peripheral devices}
- G06F 13/4068: {Electrical coupling}
- G06F 13/4221: {being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus}
- G06F 2009/45562: {Creating, deleting, cloning virtual machine instances}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A cloned configuration of a source machine is created by determining a first set of physical location codes for a source machine. A map is generated based on the sorted physical location codes that maps the first set of physical location codes to a first set of generic location codes. A second set of physical location codes associated with a second set of adapter slots in a target machine is generated. A second map is generated based on the sorted second set of physical location codes that maps the second set of physical location codes to a second set of generic location codes. A third set of physical location codes is generated based on the first set of generic location codes and the second map. If an entry in the third set of physical location codes is not present the second set of physical location codes, an error is generated.

## Claims

### Claim 1

A method for cloning a machine configuration, the method comprising:
determining, by one or more processors, a first set of physical location codes associated with a first set of adapter slots in a source machine,
determining, by the one or more processors, a first order for the first set of physical location codes, and
generating, by the one or more processors, based at least in part on the first order, a first map that maps the first set of physical location codes to a first set of generic location codes;
wherein unassigned slots are omitted from the mapping of the first set of physical location codes to the first set of generic location codes.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining a second set of physical location codes associated with a second set of adapter slots in a target machine;
determining a second order for the second set of physical location codes;
generating, based at least in part on the second order, a second map that maps the second set of physical location codes to a second set of generic location codes;
generating a third set of physical location codes from the first set of generic location codes and the second map; and
utilizing the third set of physical location codes in a configuration for the target machine.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
in response to determining that an entry in the third set of physical location codes is not present the second set of physical location codes, generating an error.

### Claim 4 (depends on 1)

The method of claim 1, further comprising sorting the first set of physical location codes according to a discovery order.

### Claim 5 (depends on 1)

The method of claim 1, further comprising reading the first set of generic location codes from a configuration template.

### Claim 6 (depends on 1)

The method of claim 1, wherein a physical location code of the first set of physical location codes includes a first unique portion and a second non-unique portion, and wherein the first map includes a mapping from the first unique portion to a generic portion of a generic location code.

### Claim 7 (depends on 6)

The method of claim 6, wherein the first unique portion identifies an input/output (I/O) enclosure and wherein the second non-unique portion identifies an adapter card slot within the I/O enclosure.

### Claim 8

A system comprising:
one or more processors; and
a non-transitory computer readable storage medium communicably coupled to the one or more processors, the computer readable storage medium having program instructions embodied therewith, the program instructions executable by the one or more processors to cause the one or more processors to:
read a configuration file having a first set of generic location codes;
determine a first set of physical location codes associated with a first set of adapter slots in a target machine;
determine a first order for the first set of physical location codes;
generate, based at least in part on the first order, a first map that maps the first set of physical location codes to a second set of generic location codes;
generate a second set of physical location codes from the first set of generic location codes and the first map; and
utilize the second set of physical location codes in a configuration for the target machine.

### Claim 9 (depends on 8)

The system of claim 8, wherein the first set of physical location codes is sorted according to a discovery order.

### Claim 10 (depends on 8)

The system of claim 8, wherein the first set of generic location codes are created by the one or more processors according to instructions that cause the one or more processors to:
determine a third set of physical location codes associated with a second set of adapter slots in a source machine;
determine a second order for the third set of physical location codes; and
generate, based at least in part on the first order, a second map that maps the third set of physical location codes to the first set of generic location codes.

### Claim 11 (depends on 8)

The system of claim 8, wherein a physical location code of the first set of physical location codes includes a first unique portion and a second non-unique portion, and wherein the first map includes a mapping from the first unique portion to a generic portion of a generic location code.

### Claim 12 (depends on 11)

The system of claim 11, wherein the first unique portion identifies an input/output (I/O) enclosure and wherein the second non-unique portion identifies an adapter card slot within the I/O enclosure.

### Claim 13

A computer program product for cloning a machine configuration, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors to cause the one or more processors to:
determine a first set of physical location codes associated with a first set of adapter slots in a source machine,
determine a first order for the first set of physical location codes, and
generate, based at least in part on the first order, a first map that maps the first set of physical location codes to a first set of generic location codes;
wherein unassigned slots are omitted from the mapping of the first set of physical location codes to the first set of generic location codes.

### Claim 14 (depends on 13)

The computer program product of claim 13, wherein the program instructions further comprise program instructions executable by the one or more processors to cause the one or more processors to:
determine a second set of physical location codes associated with a second set of adapter slots in a target machine;
determine a second order for the second set of physical location codes;
generate, based at least in part on the second order, a second map that maps the second set of physical location codes to a second set of generic location codes;
generate a third set of physical location codes from the first set of generic location codes and the second map; and
utilize the third set of physical location codes in a configuration for the target machine.

### Claim 15 (depends on 14)

The computer program product of claim 14, wherein the program instructions further comprise program instructions executable by the one or more processors to cause the one or more processors to, in response to a determination that an entry in the third set of physical location codes is not present the second set of physical location codes, generate an error.

### Claim 16 (depends on 13)

The computer program product of claim 13, wherein the first set of physical location codes are sorted according to a discovery order.

### Claim 17 (depends on 13)

The computer program product of claim 13, wherein the program instructions further comprise program instructions executable by the one or more processors to cause the one or more processors to read the first set of generic location codes from a configuration template.

### Claim 18 (depends on 13)

The computer program product of claim 13, wherein a physical location code of the first set of physical location codes includes a first unique portion and a second non-unique portion, and wherein the first map includes a mapping from the first unique portion to a generic portion of a generic location code.

### Claim 19 (depends on 18)

The computer program product of claim 18, wherein the first unique portion identifies an input/output (I/O) enclosure and wherein the second non-unique portion identifies an adapter card slot within the I/O enclosure.
